Struct rk3399_pac::Gmac

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

Gigabit Media Access Controller (GMAC) Registers

Implementations§

source§

impl Gmac

source

pub const PTR: *const RegisterBlock = {0xfe300000 as *const gmac::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 mac_conf(&self) -> &MacConf

0x00 - MAC Configuration Register

source

pub fn mac_frm_filt(&self) -> &MacFrmFilt

0x04 - MAC Frame Filter

source

pub fn hash_tab_hi(&self) -> &HashTabHi

0x08 - Hash Table High Register

source

pub fn hash_tab_lo(&self) -> &HashTabLo

0x0c - Hash Table Low Register

source

pub fn gmii_addr(&self) -> &GmiiAddr

0x10 - GMII Address Register

source

pub fn gmii_data(&self) -> &GmiiData

0x14 - GMII Data Register

source

pub fn flow_ctrl(&self) -> &FlowCtrl

0x18 - Flow Control Register

source

pub fn vlan_tag(&self) -> &VlanTag

0x1c - VLAN Tag Register

source

pub fn debug(&self) -> &Debug

0x24 - Debug register

source

pub fn pmt_ctrl_sta(&self) -> &PmtCtrlSta

0x2c - PMT Control and Status Register

source

pub fn int_status(&self) -> &IntStatus

0x38 - Interrupt Status Register

source

pub fn int_mask(&self) -> &IntMask

0x3c - Interrupt Mask Register

source

pub fn mac_addr0_hi(&self) -> &MacAddr0Hi

0x40 - MAC Address0 High Register

source

pub fn mac_addr0_lo(&self) -> &MacAddr0Lo

0x44 - MAC Address0 Low Register

source

pub fn an_ctrl(&self) -> &AnCtrl

0xc0 - AN Control Register

source

pub fn an_status(&self) -> &AnStatus

0xc4 - AN Status Register

source

pub fn an_adv(&self) -> &AnAdv

0xc8 - Auto Negotiation Advertisement Register

0xcc - Auto Negotiation Link Partner Ability Register

source

pub fn an_exp(&self) -> &AnExp

0xd0 - Auto Negotiation Expansion Register

source

pub fn intf_mode_sta(&self) -> &IntfModeSta

0xd8 - RGMII Status Register

source

pub fn mmc_ctrl(&self) -> &MmcCtrl

0x100 - MMC Control Register

source

pub fn mmc_rx_intr(&self) -> &MmcRxIntr

0x104 - MMC Receive Interrupt Register

source

pub fn mmc_tx_intr(&self) -> &MmcTxIntr

0x108 - MMC Transmit Interrupt Register

source

pub fn mmc_rx_int_msk(&self) -> &MmcRxIntMsk

0x10c - MMC Receive Interrupt Mask Register

source

pub fn mmc_tx_int_msk(&self) -> &MmcTxIntMsk

0x110 - MMC Transmit Interrupt Mask Register

source

pub fn mmc_txoctetcnt_gb(&self) -> &MmcTxoctetcntGb

0x114 - MMC TX OCTET Good and Bad Counter

source

pub fn mmc_txfrmcnt_gb(&self) -> &MmcTxfrmcntGb

0x118 - MMC TX Frame Good and Bad Counter

source

pub fn mmc_txundflwerr(&self) -> &MmcTxundflwerr

0x148 - MMC TX Underflow Error

source

pub fn mmc_txcarerr(&self) -> &MmcTxcarerr

0x160 - MMC TX Carrier Error

source

pub fn mmc_txoctetcnt_g(&self) -> &MmcTxoctetcntG

0x164 - MMC TX OCTET Good Counter

source

pub fn mmc_txfrmcnt_g(&self) -> &MmcTxfrmcntG

0x168 - MMC TX Frame Good Counter

source

pub fn mmc_rxfrmcnt_gb(&self) -> &MmcRxfrmcntGb

0x180 - MMC RX Frame Good and Bad Counter

source

pub fn mmc_rxoctetcnt_gb(&self) -> &MmcRxoctetcntGb

0x184 - MMC RX OCTET Good and Bad Counter

source

pub fn mmc_rxoctetcnt_g(&self) -> &MmcRxoctetcntG

0x188 - MMC RX OCTET Good Counter

source

pub fn mmc_rxmcfrmcnt_g(&self) -> &MmcRxmcfrmcntG

0x190 - MMC RX Multicast Frame Good Counter

source

pub fn mmc_rxcrcerr(&self) -> &MmcRxcrcerr

0x194 - MMC RX Carrier

source

pub fn mmc_rxlenerr(&self) -> &MmcRxlenerr

0x1c8 - MMC RX Length Error

source

pub fn mmc_rxfifoovrflw(&self) -> &MmcRxfifoovrflw

0x1d4 - MMC RX FIFO Overflow

source

pub fn mmc_ipc_int_msk(&self) -> &MmcIpcIntMsk

0x200 - MMC Receive Checksum Offload Interrupt Mask Register

source

pub fn mmc_ipc_intr(&self) -> &MmcIpcIntr

0x208 - MMC Receive Checksum Offload Interrupt Register

source

pub fn mmc_rxipv4gfrm(&self) -> &MmcRxipv4gfrm

0x210 - MMC RX IPV4 Good Frame

source

pub fn mmc_rxipv4hderrfrm(&self) -> &MmcRxipv4hderrfrm

0x214 - MMC RX IPV4 Head Error Frame

source

pub fn mmc_rxipv6gfrm(&self) -> &MmcRxipv6gfrm

0x224 - MMC RX IPV6 Good Frame

source

pub fn mmc_rxipv6hderrfrm(&self) -> &MmcRxipv6hderrfrm

0x228 - MMC RX IPV6 Head Error Frame

source

pub fn mmc_rxudperrfrm(&self) -> &MmcRxudperrfrm

0x234 - MMC RX UDP Error Frame

source

pub fn mmc_rxtcperrfrm(&self) -> &MmcRxtcperrfrm

0x23c - MMC RX TCP Error Frame

source

pub fn mmc_rxicmperrfrm(&self) -> &MmcRxicmperrfrm

0x244 - MMC RX ICMP Error Frame

source

pub fn mmc_rxipv4hderroct(&self) -> &MmcRxipv4hderroct

0x254 - MMC RX OCTET IPV4 Head Error

source

pub fn mmc_rxipv6hderroct(&self) -> &MmcRxipv6hderroct

0x268 - MMC RX OCTET IPV6 Head Error

source

pub fn mmc_rxudperroct(&self) -> &MmcRxudperroct

0x274 - MMC RX OCTET UDP Error

source

pub fn mmc_rxtcperroct(&self) -> &MmcRxtcperroct

0x27c - MMC RX OCTET TCP Error

source

pub fn mmc_rxicmperroct(&self) -> &MmcRxicmperroct

0x284 - MMC RX OCTET ICMP Error

source

pub fn bus_mode(&self) -> &BusMode

0x1000 - Bus Mode Register

source

pub fn tx_poll_demand(&self) -> &TxPollDemand

0x1004 - Transmit Poll Demand Register

source

pub fn rx_poll_demand(&self) -> &RxPollDemand

0x1008 - Receive Poll Demand Register

source

pub fn rx_desc_list_addr(&self) -> &RxDescListAddr

0x100c - Receive Descriptor List Address Register

source

pub fn tx_desc_list_addr(&self) -> &TxDescListAddr

0x1010 - Transmit Descriptor List Address Register

source

pub fn status(&self) -> &Status

0x1014 - Status Register

source

pub fn op_mode(&self) -> &OpMode

0x1018 - Operation Mode Register

source

pub fn int_ena(&self) -> &IntEna

0x101c - Interrupt Enable Register

source

pub fn overflow_cnt(&self) -> &OverflowCnt

0x1020 - Missed Frame and Buffer Overflow Counter Register

source

pub fn rec_int_wdt_timer(&self) -> &RecIntWdtTimer

0x1024 - Receive Interrupt Watchdog Timer Register

source

pub fn axi_bus_mode(&self) -> &AxiBusMode

0x1028 - AXI Bus Mode Register

source

pub fn axi_status(&self) -> &AxiStatus

0x102c - AXI Status Register

source

pub fn cur_host_tx_desc(&self) -> &CurHostTxDesc

0x1048 - Current Host Transmit Descriptor Register

source

pub fn cur_host_rx_desc(&self) -> &CurHostRxDesc

0x104c - Current Host Receive Descriptor Register

source

pub fn cur_host_tx_buf_addr(&self) -> &CurHostTxBufAddr

0x1050 - Current Host Transmit Buffer Address Register

source

pub fn cur_host_rx_buf_addr(&self) -> &CurHostRxBufAddr

0x1054 - Current Host Receive Buffer Address Register

Trait Implementations§

source§

impl Debug for Gmac

source§

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

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

impl Deref for Gmac

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

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

Dereferences the value.
source§

impl Send for Gmac

Auto Trait Implementations§

§

impl Freeze for Gmac

§

impl RefUnwindSafe for Gmac

§

impl !Sync for Gmac

§

impl Unpin for Gmac

§

impl UnwindSafe for Gmac

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.