Struct rk3399_pac::Cci500

source ·
pub struct Cci500 { /* private fields */ }
Expand description

Cache Coherent Interconnect 500 (CCI500) Registers

Implementations§

source§

impl Cci500

source

pub const PTR: *const RegisterBlock = {0xffb00000 as *const cci500::RegisterBlock}

Pointer to the register block

source

pub const fn ptr() -> *const RegisterBlock

Return the pointer to the register block

source

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>§

source

pub fn sys_ctrl(&self) -> &SysCtrl

0x00 - Control Override Register

source

pub fn secure_ctrl(&self) -> &SecureCtrl

0x08 - Secure Access Register

source

pub fn status(&self) -> &Status

0x0c - Status Register

source

pub fn error_status(&self) -> &ErrorStatus

0x10 - Imprecise Error Register

source

pub fn pfmmon_ctrl(&self) -> &PfmmonCtrl

0x100 - Performance Monitor Control Register (PMCR)

source

pub fn interface_monitor_ctrl(&self) -> &InterfaceMonitorCtrl

0x104 - Snoop Control Register for slave interface x

source

pub fn snoop_ctrl_s0(&self) -> &SnoopCtrlS0

0x1000 -

source

pub fn shareable_override_s0(&self) -> &ShareableOverrideS0

0x1004 - Shareable Override Register

source

pub fn rd_chan_qos_override_s0(&self) -> &RdChanQosOverrideS0

0x1100 - Read Channel QoS Value Override Register for slave interface x

source

pub fn wr_chan_qos_override_s0(&self) -> &WrChanQosOverrideS0

0x1104 - Write Channel QoS Value Override slave interface x

source

pub fn max_ot_s0(&self) -> &MaxOtS0

0x1110 - Maximum Outstanding Transactions Registers

source

pub fn snoop_ctrl_s1(&self) -> &SnoopCtrlS1

0x2000 -

source

pub fn shareable_override_s1(&self) -> &ShareableOverrideS1

0x2004 - Shareable Override Register

source

pub fn rd_chan_qos_override_s1(&self) -> &RdChanQosOverrideS1

0x2100 - Read Channel QoS Value Override Register for slave interface x

source

pub fn wr_chan_qos_override_s1(&self) -> &WrChanQosOverrideS1

0x2104 - Write Channel QoS Value Override slave interface x

source

pub fn max_ot_s1(&self) -> &MaxOtS1

0x2110 - Maximum Outstanding Transactions Registers

source

pub fn slave_interface_monitor_s0(&self) -> &SlaveInterfaceMonitorS0

0x90000 - Slave Interface Monitor Registers

source

pub fn slave_interface_monitor_s1(&self) -> &SlaveInterfaceMonitorS1

0x90004 - Slave Interface Monitor Registers

source

pub fn master_interface_monitor_m0(&self) -> &MasterInterfaceMonitorM0

0x90100 - Master Interface Monitor Registers

source

pub fn master_interface_monitor_m1(&self) -> &MasterInterfaceMonitorM1

0x90104 - Master Interface Monitor Registers

Trait Implementations§

source§

impl Debug for Cci500

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for Cci500

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Send for Cci500

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.