Struct EMAC_MAC

Source
pub struct EMAC_MAC { /* private fields */ }
Expand description

Ethernet MAC configuration and control registers

Implementations§

Source§

impl EMAC_MAC

Source

pub const PTR: *const RegisterBlock = {0x3ff6a000 as *const emac_mac::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 emacconfig(&self) -> &EMACCONFIG

0x00 - MAC configuration

Source

pub fn emacff(&self) -> &EMACFF

0x04 - Frame filter settings

Source

pub fn emacgmiiaddr(&self) -> &EMACGMIIADDR

0x10 - PHY configuration access

Source

pub fn emacmiidata(&self) -> &EMACMIIDATA

0x14 - PHY data read write

Source

pub fn emacfc(&self) -> &EMACFC

0x18 - Frame flow control

Source

pub fn emacdebug(&self) -> &EMACDEBUG

0x24 - Status debugging bits

Source

pub fn pmt_rwuffr(&self) -> &PMT_RWUFFR

0x28 - The MSB (31st bit) must be zero.Bit j[30:0] is the byte mask. If Bit 1/2/3/4 (byte number) of the byte mask is set the CRC block processes the Filter 1/2/3/4 Offset + j of the incoming packet(PWKPTR is 0/1/2/3).RWKPTR is 0:Filter 0 Byte Mask .RWKPTR is 1:Filter 1 Byte Mask RWKPTR is 2:Filter 2 Byte Mask RWKPTR is 3:Filter 3 Byte Mask RWKPTR is 4:Bit 3/11/19/27 specifies the address type defining the destination address type of the pattern.When the bit is set the pattern applies to only multicast packets

Source

pub fn pmt_csr(&self) -> &PMT_CSR

0x2c - PMT Control and Status

Source

pub fn emaclpi_crs(&self) -> &EMACLPI_CRS

0x30 - LPI Control and Status

Source

pub fn emaclpitimerscontrol(&self) -> &EMACLPITIMERSCONTROL

0x34 - LPI Timers Control

Source

pub fn emacints(&self) -> &EMACINTS

0x38 - Interrupt status

Source

pub fn emacintmask(&self) -> &EMACINTMASK

0x3c - Interrupt mask

Source

pub fn emacaddr0high(&self) -> &EMACADDR0HIGH

0x40 - Upper 16 bits of the first 6-byte MAC address

Source

pub fn emacaddr0low(&self) -> &EMACADDR0LOW

0x44 - This field contains the lower 32 bits of the first 6-byte MAC address. This is used by the MAC for filtering the received frames and inserting the MAC address in the Transmit Flow Control (Pause) Frames.

Source

pub fn emacaddr1high(&self) -> &EMACADDR1HIGH

0x48 - Upper 16 bits of the second 6-byte MAC address

Source

pub fn emacaddr1low(&self) -> &EMACADDR1LOW

0x4c - This field contains the lower 32 bits of the second 6-byte MAC address.The content of this field is undefined so the register needs to be configured after the initialization Process.

Source

pub fn emacaddr2high(&self) -> &EMACADDR2HIGH

0x50 - Upper 16 bits of the third 6-byte MAC address

Source

pub fn emacaddr2low(&self) -> &EMACADDR2LOW

0x54 - This field contains the lower 32 bits of the third 6-byte MAC address. The content of this field is undefined so the register needs to be configured after the initialization process.

Source

pub fn emacaddr3high(&self) -> &EMACADDR3HIGH

0x58 - Upper 16 bits of the fourth 6-byte MAC address

Source

pub fn emacaddr3low(&self) -> &EMACADDR3LOW

0x5c - This field contains the lower 32 bits of the fourth 6-byte MAC address.The content of this field is undefined so the register needs to be configured after the initialization Process.

Source

pub fn emacaddr4high(&self) -> &EMACADDR4HIGH

0x60 - Upper 16 bits of the fifth 6-byte MAC address

Source

pub fn emacaddr4low(&self) -> &EMACADDR4LOW

0x64 - This field contains the lower 32 bits of the fifth 6-byte MAC address. The content of this field is undefined so the register needs to be configured after the initialization process.

Source

pub fn emacaddr5high(&self) -> &EMACADDR5HIGH

0x68 - Upper 16 bits of the sixth 6-byte MAC address

Source

pub fn emacaddr5low(&self) -> &EMACADDR5LOW

0x6c - This field contains the lower 32 bits of the sixth 6-byte MAC address. The content of this field is undefined so the register needs to be configured after the initialization process.

Source

pub fn emacaddr6high(&self) -> &EMACADDR6HIGH

0x70 - Upper 16 bits of the seventh 6-byte MAC address

Source

pub fn emacaddr6low(&self) -> &EMACADDR6LOW

0x74 - This field contains the lower 32 bits of the seventh 6-byte MAC address.The content of this field is undefined so the register needs to be configured after the initialization Process.

Source

pub fn emacaddr7high(&self) -> &EMACADDR7HIGH

0x78 - Upper 16 bits of the eighth 6-byte MAC address

Source

pub fn emacaddr7low(&self) -> &EMACADDR7LOW

0x7c - This field contains the lower 32 bits of the eighth 6-byte MAC address.The content of this field is undefined so the register needs to be configured after the initialization Process.

Source

pub fn emaccstatus(&self) -> &EMACCSTATUS

0xd8 - Link communication status

Source

pub fn emacwdogto(&self) -> &EMACWDOGTO

0xdc - Watchdog timeout control

Trait Implementations§

Source§

impl Debug for EMAC_MAC

Source§

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

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

impl Deref for EMAC_MAC

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for EMAC_MAC

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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

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

Source§

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

Source§

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.