Struct rk3399_pac::Pmu
source · pub struct Pmu { /* private fields */ }
Expand description
Power Management Unit (PMU) Registers
Implementations§
source§impl Pmu
impl Pmu
sourcepub const PTR: *const RegisterBlock = {0xff310000 as *const pmu::RegisterBlock}
pub const PTR: *const RegisterBlock = {0xff310000 as *const pmu::RegisterBlock}
Pointer to the register block
sourcepub const fn ptr() -> *const RegisterBlock
pub const fn ptr() -> *const RegisterBlock
Return the pointer to the register block
sourcepub unsafe fn steal() -> Self
pub unsafe fn steal() -> Self
Steal an instance of this peripheral
§Safety
Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.
Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.
Methods from Deref<Target = RegisterBlock>§
sourcepub fn wakeup_cfg0(&self) -> &WakeupCfg0
pub fn wakeup_cfg0(&self) -> &WakeupCfg0
0x00 - pmu wakeup configure register 0
sourcepub fn wakeup_cfg1(&self) -> &WakeupCfg1
pub fn wakeup_cfg1(&self) -> &WakeupCfg1
0x04 - pmu wakeup configure register 1
sourcepub fn wakeup_cfg2(&self) -> &WakeupCfg2
pub fn wakeup_cfg2(&self) -> &WakeupCfg2
0x08 - pmu wakeup configure register 2
sourcepub fn wakeup_cfg3(&self) -> &WakeupCfg3
pub fn wakeup_cfg3(&self) -> &WakeupCfg3
0x0c - pmu wakeup configure register 3
sourcepub fn wakeup_cfg4(&self) -> &WakeupCfg4
pub fn wakeup_cfg4(&self) -> &WakeupCfg4
0x10 - pmu wakeup configure register 4
sourcepub fn pwrmode_con(&self) -> &PwrmodeCon
pub fn pwrmode_con(&self) -> &PwrmodeCon
0x20 - pmu power mode configure register of common resource
sourcepub fn gpio0_pos_int_con(&self) -> &Gpio0PosIntCon
pub fn gpio0_pos_int_con(&self) -> &Gpio0PosIntCon
0x30 - pmu gpio0 posedge interrupt configure register
sourcepub fn gpio0_neg_int_con(&self) -> &Gpio0NegIntCon
pub fn gpio0_neg_int_con(&self) -> &Gpio0NegIntCon
0x34 - pmu gpio0 negedge interrupt configure register
sourcepub fn gpio1_pos_int_con(&self) -> &Gpio1PosIntCon
pub fn gpio1_pos_int_con(&self) -> &Gpio1PosIntCon
0x38 - pmu gpio1 posedge interrupt configure register
sourcepub fn gpio1_neg_int_con(&self) -> &Gpio1NegIntCon
pub fn gpio1_neg_int_con(&self) -> &Gpio1NegIntCon
0x3c - pmu gpio1 negedge interrupt configure register
sourcepub fn gpio0_pos_int_st(&self) -> &Gpio0PosIntSt
pub fn gpio0_pos_int_st(&self) -> &Gpio0PosIntSt
0x40 - pmu gpio0 posedge interrupt status register
sourcepub fn gpio0_neg_int_st(&self) -> &Gpio0NegIntSt
pub fn gpio0_neg_int_st(&self) -> &Gpio0NegIntSt
0x44 - pmu gpio0 negedge interrupt status register
sourcepub fn gpio1_pos_int_st(&self) -> &Gpio1PosIntSt
pub fn gpio1_pos_int_st(&self) -> &Gpio1PosIntSt
0x48 - pmu gpio1 posedge interrupt status register
sourcepub fn gpio1_neg_int_st(&self) -> &Gpio1NegIntSt
pub fn gpio1_neg_int_st(&self) -> &Gpio1NegIntSt
0x4c - pmu gpio1 negedge interrupt status register
sourcepub fn pwrdn_inten(&self) -> &PwrdnInten
pub fn pwrdn_inten(&self) -> &PwrdnInten
0x50 - pmu power down interrupt enable register
sourcepub fn pwrdn_status(&self) -> &PwrdnStatus
pub fn pwrdn_status(&self) -> &PwrdnStatus
0x54 - pmu power down interrupt status register
sourcepub fn wakeup_status(&self) -> &WakeupStatus
pub fn wakeup_status(&self) -> &WakeupStatus
0x58 - pmu interrupt wakeup status register
sourcepub fn bus_idle_req(&self) -> &BusIdleReq
pub fn bus_idle_req(&self) -> &BusIdleReq
0x60 - pmu bus idle request register
sourcepub fn bus_idle_st(&self) -> &BusIdleSt
pub fn bus_idle_st(&self) -> &BusIdleSt
0x64 - pmu bus idle status register
sourcepub fn bus_idle_ack(&self) -> &BusIdleAck
pub fn bus_idle_ack(&self) -> &BusIdleAck
0x68 - pmu bus idle ack status register
sourcepub fn cci500_con(&self) -> &Cci500Con
pub fn cci500_con(&self) -> &Cci500Con
0x6c - CCI-500 low power control register
sourcepub fn adb400_con(&self) -> &Adb400Con
pub fn adb400_con(&self) -> &Adb400Con
0x70 - adb-400 low power control register
sourcepub fn core_pwr_st(&self) -> &CorePwrSt
pub fn core_pwr_st(&self) -> &CorePwrSt
0x7c - pmu core power status register
sourcepub fn plllock_cnt(&self) -> &PlllockCnt
pub fn plllock_cnt(&self) -> &PlllockCnt
0x84 - pmu pll lock count register
sourcepub fn pllrst_cnt(&self) -> &PllrstCnt
pub fn pllrst_cnt(&self) -> &PllrstCnt
0x88 - pmu pll reset count register
sourcepub fn stable_cnt(&self) -> &StableCnt
pub fn stable_cnt(&self) -> &StableCnt
0x8c - pmu power stable count register
sourcepub fn ddrio_pwron_cnt(&self) -> &DdrioPwronCnt
pub fn ddrio_pwron_cnt(&self) -> &DdrioPwronCnt
0x90 - pmu ddrio power on count register
sourcepub fn wakeup_rst_clr_cnt(&self) -> &WakeupRstClrCnt
pub fn wakeup_rst_clr_cnt(&self) -> &WakeupRstClrCnt
0x94 - pmu wakeup reset clear count register
sourcepub fn ddr_sref_st(&self) -> &DdrSrefSt
pub fn ddr_sref_st(&self) -> &DdrSrefSt
0x98 - pmu ddr self refresh status register
sourcepub fn scu_l_pwrdn_cnt(&self) -> &ScuLPwrdnCnt
pub fn scu_l_pwrdn_cnt(&self) -> &ScuLPwrdnCnt
0x9c - pmu scu_l power down count register
sourcepub fn scu_l_pwrup_cnt(&self) -> &ScuLPwrupCnt
pub fn scu_l_pwrup_cnt(&self) -> &ScuLPwrupCnt
0xa0 - pmu scu_l power up count register
sourcepub fn scu_b_pwrdn_cnt(&self) -> &ScuBPwrdnCnt
pub fn scu_b_pwrdn_cnt(&self) -> &ScuBPwrdnCnt
0xa4 - pmu scu_b power down count register
sourcepub fn scu_b_pwrup_cnt(&self) -> &ScuBPwrupCnt
pub fn scu_b_pwrup_cnt(&self) -> &ScuBPwrupCnt
0xa8 - pmu scu_b power up count register
sourcepub fn gpu_pwrdn_cnt(&self) -> &GpuPwrdnCnt
pub fn gpu_pwrdn_cnt(&self) -> &GpuPwrdnCnt
0xac - pmu gpu power down count register
sourcepub fn gpu_pwrup_cnt(&self) -> &GpuPwrupCnt
pub fn gpu_pwrup_cnt(&self) -> &GpuPwrupCnt
0xb0 - pmu gpu power up count register
sourcepub fn center_pwrdn_cnt(&self) -> &CenterPwrdnCnt
pub fn center_pwrdn_cnt(&self) -> &CenterPwrdnCnt
0xb4 - pmu center power down count register
sourcepub fn center_pwrup_cnt(&self) -> &CenterPwrupCnt
pub fn center_pwrup_cnt(&self) -> &CenterPwrupCnt
0xb8 - pmu center power up count register
sourcepub fn timeout_cnt(&self) -> &TimeoutCnt
pub fn timeout_cnt(&self) -> &TimeoutCnt
0xbc - pmu timeout count register
sourcepub fn cpu0apm_con(&self) -> &Cpu0apmCon
pub fn cpu0apm_con(&self) -> &Cpu0apmCon
0xc0 - pmu cpu0 auto power down control register
sourcepub fn cpu1apm_con(&self) -> &Cpu1apmCon
pub fn cpu1apm_con(&self) -> &Cpu1apmCon
0xc4 - pmu cpu1 auto power down control register
sourcepub fn cpu2apm_con(&self) -> &Cpu2apmCon
pub fn cpu2apm_con(&self) -> &Cpu2apmCon
0xc8 - pmu cpu2 auto power down control register
sourcepub fn cpu3apm_con(&self) -> &Cpu3apmCon
pub fn cpu3apm_con(&self) -> &Cpu3apmCon
0xcc - pmu cpu3 auto power down control register
sourcepub fn cpu0bpm_con(&self) -> &Cpu0bpmCon
pub fn cpu0bpm_con(&self) -> &Cpu0bpmCon
0xd0 - pmu cluster_b cpu0 auto power down control register
sourcepub fn cpu1bpm_con(&self) -> &Cpu1bpmCon
pub fn cpu1bpm_con(&self) -> &Cpu1bpmCon
0xd4 - pmu cluster_b cpu0 auto power down control register
sourcepub fn noc_auto_ena(&self) -> &NocAutoEna
pub fn noc_auto_ena(&self) -> &NocAutoEna
0xd8 - NOC auto domain clock gating disable enable register
sourcepub fn pwrdn_con1(&self) -> &PwrdnCon1
pub fn pwrdn_con1(&self) -> &PwrdnCon1
0xdc - pmu power down configure register1