Struct rp2040_pac::BUSCTRL

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

Register block for busfabric control signals and performance counters

Implementations§

source§

impl BUSCTRL

source

pub const PTR: *const RegisterBlock = {0x40030000 as *const busctrl::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 bus_priority(&self) -> &BUS_PRIORITY

0x00 - Set the priority of each master for bus arbitration.

source

pub fn bus_priority_ack(&self) -> &BUS_PRIORITY_ACK

0x04 - Bus priority acknowledge

source

pub fn perfctr0(&self) -> &PERFCTR0

0x08 - Bus fabric performance counter 0

source

pub fn perfsel0(&self) -> &PERFSEL0

0x0c - Bus fabric performance event select for PERFCTR0

source

pub fn perfctr1(&self) -> &PERFCTR1

0x10 - Bus fabric performance counter 1

source

pub fn perfsel1(&self) -> &PERFSEL1

0x14 - Bus fabric performance event select for PERFCTR1

source

pub fn perfctr2(&self) -> &PERFCTR2

0x18 - Bus fabric performance counter 2

source

pub fn perfsel2(&self) -> &PERFSEL2

0x1c - Bus fabric performance event select for PERFCTR2

source

pub fn perfctr3(&self) -> &PERFCTR3

0x20 - Bus fabric performance counter 3

source

pub fn perfsel3(&self) -> &PERFSEL3

0x24 - Bus fabric performance event select for PERFCTR3

Trait Implementations§

source§

impl Debug for BUSCTRL

source§

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

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

impl Deref for BUSCTRL

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

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

Dereferences the value.
source§

impl Send for BUSCTRL

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.