lowrisc/registers/
clkmgr_regs.rs1use kernel::utilities::registers::ReadWrite;
13use kernel::utilities::registers::{register_bitfields, register_structs};
14pub const CLKMGR_PARAM_NUM_GROUPS: u32 = 7;
16pub const CLKMGR_PARAM_REG_WIDTH: u32 = 32;
18
19register_structs! {
20 pub ClkmgrRegisters {
21 (0x0000 => pub(crate) clk_enables: ReadWrite<u32, CLK_ENABLES::Register>),
23 (0x0004 => pub(crate) clk_hints: ReadWrite<u32, CLK_HINTS::Register>),
25 (0x0008 => pub(crate) clk_hints_status: ReadWrite<u32, CLK_HINTS_STATUS::Register>),
27 (0x000c => @END),
28 }
29}
30
31register_bitfields![u32,
32 pub(crate) CLK_ENABLES [
33 CLK_FIXED_PERI_EN OFFSET(0) NUMBITS(1) [],
34 CLK_USB_48MHZ_PERI_EN OFFSET(1) NUMBITS(1) [],
35 ],
36 pub(crate) CLK_HINTS [
37 CLK_MAIN_AES_HINT OFFSET(0) NUMBITS(1) [],
38 CLK_MAIN_HMAC_HINT OFFSET(1) NUMBITS(1) [],
39 ],
40 pub(crate) CLK_HINTS_STATUS [
41 CLK_MAIN_AES_VAL OFFSET(0) NUMBITS(1) [],
42 CLK_MAIN_HMAC_VAL OFFSET(1) NUMBITS(1) [],
43 ],
44];
45
46