Struct xmc4500::ETH0

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

Ethernet Unit 0

Implementations§

source§

impl ETH0

source

pub const PTR: *const RegisterBlock = {0x5000c000 as *const eth0::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_configuration(&self) -> &MAC_CONFIGURATION

0x00 - MAC Configuration Register

source

pub fn mac_frame_filter(&self) -> &MAC_FRAME_FILTER

0x04 - MAC Frame Filter

source

pub fn hash_table_high(&self) -> &HASH_TABLE_HIGH

0x08 - Hash Table High Register

source

pub fn hash_table_low(&self) -> &HASH_TABLE_LOW

0x0c - Hash Table Low Register

source

pub fn gmii_address(&self) -> &GMII_ADDRESS

0x10 - MII Address Register

source

pub fn gmii_data(&self) -> &GMII_DATA

0x14 - MII Data Register

source

pub fn flow_control(&self) -> &FLOW_CONTROL

0x18 - Flow Control Register

source

pub fn vlan_tag(&self) -> &VLAN_TAG

0x1c - VLAN Tag Register

source

pub fn version(&self) -> &VERSION

0x20 - Version Register

source

pub fn debug(&self) -> &DEBUG

0x24 - Debug Register

source

pub fn remote_wake_up_frame_filter(&self) -> &REMOTE_WAKE_UP_FRAME_FILTER

0x28 - Remote Wake Up Frame Filter Register

source

pub fn pmt_control_status(&self) -> &PMT_CONTROL_STATUS

0x2c - PMT Control and Status Register

source

pub fn interrupt_status(&self) -> &INTERRUPT_STATUS

0x38 - Interrupt Register

source

pub fn interrupt_mask(&self) -> &INTERRUPT_MASK

0x3c - Interrupt Mask Register

source

pub fn mac_address0_high(&self) -> &MAC_ADDRESS0_HIGH

0x40 - MAC Address0 High Register

source

pub fn mac_address0_low(&self) -> &MAC_ADDRESS0_LOW

0x44 - MAC Address0 Low Register

source

pub fn mac_address1_high(&self) -> &MAC_ADDRESS1_HIGH

0x48 - MAC Address1 High Register

source

pub fn mac_address1_low(&self) -> &MAC_ADDRESS1_LOW

0x4c - MAC Address1 Low Register

source

pub fn mac_address2_high(&self) -> &MAC_ADDRESS2_HIGH

0x50 - MAC Address2 High Register

source

pub fn mac_address2_low(&self) -> &MAC_ADDRESS2_LOW

0x54 - MAC Address2 Low Register

source

pub fn mac_address3_high(&self) -> &MAC_ADDRESS3_HIGH

0x58 - MAC Address3 High Register

source

pub fn mac_address3_low(&self) -> &MAC_ADDRESS3_LOW

0x5c - MAC Address3 Low Register

source

pub fn mmc_control(&self) -> &MMC_CONTROL

0x100 - MMC Control Register

source

pub fn mmc_receive_interrupt(&self) -> &MMC_RECEIVE_INTERRUPT

0x104 - MMC Receive Interrupt Register

source

pub fn mmc_transmit_interrupt(&self) -> &MMC_TRANSMIT_INTERRUPT

0x108 - MMC Transmit Interrupt Register

source

pub fn mmc_receive_interrupt_mask(&self) -> &MMC_RECEIVE_INTERRUPT_MASK

0x10c - MMC Reveive Interrupt Mask Register

source

pub fn mmc_transmit_interrupt_mask(&self) -> &MMC_TRANSMIT_INTERRUPT_MASK

0x110 - MMC Transmit Interrupt Mask Register

source

pub fn tx_octet_count_good_bad(&self) -> &TX_OCTET_COUNT_GOOD_BAD

0x114 - Transmit Octet Count for Good and Bad Frames Register

source

pub fn tx_frame_count_good_bad(&self) -> &TX_FRAME_COUNT_GOOD_BAD

0x118 - Transmit Frame Count for Goodand Bad Frames Register

source

pub fn tx_broadcast_frames_good(&self) -> &TX_BROADCAST_FRAMES_GOOD

0x11c - Transmit Frame Count for Good Broadcast Frames

source

pub fn tx_multicast_frames_good(&self) -> &TX_MULTICAST_FRAMES_GOOD

0x120 - Transmit Frame Count for Good Multicast Frames

source

pub fn tx_64octets_frames_good_bad(&self) -> &TX_64OCTETS_FRAMES_GOOD_BAD

0x124 - Transmit Octet Count for Good and Bad 64 Byte Frames

source

pub fn tx_65to127octets_frames_good_bad( &self ) -> &TX_65TO127OCTETS_FRAMES_GOOD_BAD

0x128 - Transmit Octet Count for Good and Bad 65 to 127 Bytes Frames

source

pub fn tx_128to255octets_frames_good_bad( &self ) -> &TX_128TO255OCTETS_FRAMES_GOOD_BAD

0x12c - Transmit Octet Count for Good and Bad 128 to 255 Bytes Frames

source

pub fn tx_256to511octets_frames_good_bad( &self ) -> &TX_256TO511OCTETS_FRAMES_GOOD_BAD

0x130 - Transmit Octet Count for Good and Bad 256 to 511 Bytes Frames

source

pub fn tx_512to1023octets_frames_good_bad( &self ) -> &TX_512TO1023OCTETS_FRAMES_GOOD_BAD

0x134 - Transmit Octet Count for Good and Bad 512 to 1023 Bytes Frames

source

pub fn tx_1024tomaxoctets_frames_good_bad( &self ) -> &TX_1024TOMAXOCTETS_FRAMES_GOOD_BAD

0x138 - Transmit Octet Count for Good and Bad 1024 to Maxsize Bytes Frames

source

pub fn tx_unicast_frames_good_bad(&self) -> &TX_UNICAST_FRAMES_GOOD_BAD

0x13c - Transmit Frame Count for Good and Bad Unicast Frames

source

pub fn tx_multicast_frames_good_bad(&self) -> &TX_MULTICAST_FRAMES_GOOD_BAD

0x140 - Transmit Frame Count for Good and Bad Multicast Frames

source

pub fn tx_broadcast_frames_good_bad(&self) -> &TX_BROADCAST_FRAMES_GOOD_BAD

0x144 - Transmit Frame Count for Good and Bad Broadcast Frames

source

pub fn tx_underflow_error_frames(&self) -> &TX_UNDERFLOW_ERROR_FRAMES

0x148 - Transmit Frame Count for Underflow Error Frames

source

pub fn tx_single_collision_good_frames( &self ) -> &TX_SINGLE_COLLISION_GOOD_FRAMES

0x14c - Transmit Frame Count for Frames Transmitted after Single Collision

source

pub fn tx_multiple_collision_good_frames( &self ) -> &TX_MULTIPLE_COLLISION_GOOD_FRAMES

0x150 - Transmit Frame Count for Frames Transmitted after Multiple Collision

source

pub fn tx_deferred_frames(&self) -> &TX_DEFERRED_FRAMES

0x154 - Tx Deferred Frames Register

source

pub fn tx_late_collision_frames(&self) -> &TX_LATE_COLLISION_FRAMES

0x158 - Transmit Frame Count for Late Collision Error Frames

source

pub fn tx_excessive_collision_frames(&self) -> &TX_EXCESSIVE_COLLISION_FRAMES

0x15c - Transmit Frame Count for Excessive Collision Error Frames

source

pub fn tx_carrier_error_frames(&self) -> &TX_CARRIER_ERROR_FRAMES

0x160 - Transmit Frame Count for Carrier Sense Error Frames

source

pub fn tx_octet_count_good(&self) -> &TX_OCTET_COUNT_GOOD

0x164 - Tx Octet Count Good Register

source

pub fn tx_frame_count_good(&self) -> &TX_FRAME_COUNT_GOOD

0x168 - Tx Frame Count Good Register

source

pub fn tx_excessive_deferral_error(&self) -> &TX_EXCESSIVE_DEFERRAL_ERROR

0x16c - Transmit Frame Count for Excessive Deferral Error Frames

source

pub fn tx_pause_frames(&self) -> &TX_PAUSE_FRAMES

0x170 - Transmit Frame Count for Good PAUSE Frames

source

pub fn tx_vlan_frames_good(&self) -> &TX_VLAN_FRAMES_GOOD

0x174 - Transmit Frame Count for Good VLAN Frames

source

pub fn tx_osize_frames_good(&self) -> &TX_OSIZE_FRAMES_GOOD

0x178 - Transmit Frame Count for Good Oversize Frames

source

pub fn rx_frames_count_good_bad(&self) -> &RX_FRAMES_COUNT_GOOD_BAD

0x180 - Receive Frame Count for Good and Bad Frames

source

pub fn rx_octet_count_good_bad(&self) -> &RX_OCTET_COUNT_GOOD_BAD

0x184 - Receive Octet Count for Good and Bad Frames

source

pub fn rx_octet_count_good(&self) -> &RX_OCTET_COUNT_GOOD

0x188 - Rx Octet Count Good Register

source

pub fn rx_broadcast_frames_good(&self) -> &RX_BROADCAST_FRAMES_GOOD

0x18c - Receive Frame Count for Good Broadcast Frames

source

pub fn rx_multicast_frames_good(&self) -> &RX_MULTICAST_FRAMES_GOOD

0x190 - Receive Frame Count for Good Multicast Frames

source

pub fn rx_crc_error_frames(&self) -> &RX_CRC_ERROR_FRAMES

0x194 - Receive Frame Count for CRC Error Frames

source

pub fn rx_alignment_error_frames(&self) -> &RX_ALIGNMENT_ERROR_FRAMES

0x198 - Receive Frame Count for Alignment Error Frames

source

pub fn rx_runt_error_frames(&self) -> &RX_RUNT_ERROR_FRAMES

0x19c - Receive Frame Count for Runt Error Frames

source

pub fn rx_jabber_error_frames(&self) -> &RX_JABBER_ERROR_FRAMES

0x1a0 - Receive Frame Count for Jabber Error Frames

source

pub fn rx_undersize_frames_good(&self) -> &RX_UNDERSIZE_FRAMES_GOOD

0x1a4 - Receive Frame Count for Undersize Frames

source

pub fn rx_oversize_frames_good(&self) -> &RX_OVERSIZE_FRAMES_GOOD

0x1a8 - Rx Oversize Frames Good Register

source

pub fn rx_64octets_frames_good_bad(&self) -> &RX_64OCTETS_FRAMES_GOOD_BAD

0x1ac - Receive Frame Count for Good and Bad 64 Byte Frames

source

pub fn rx_65to127octets_frames_good_bad( &self ) -> &RX_65TO127OCTETS_FRAMES_GOOD_BAD

0x1b0 - Receive Frame Count for Good and Bad 65 to 127 Bytes Frames

source

pub fn rx_128to255octets_frames_good_bad( &self ) -> &RX_128TO255OCTETS_FRAMES_GOOD_BAD

0x1b4 - Receive Frame Count for Good and Bad 128 to 255 Bytes Frames

source

pub fn rx_256to511octets_frames_good_bad( &self ) -> &RX_256TO511OCTETS_FRAMES_GOOD_BAD

0x1b8 - Receive Frame Count for Good and Bad 256 to 511 Bytes Frames

source

pub fn rx_512to1023octets_frames_good_bad( &self ) -> &RX_512TO1023OCTETS_FRAMES_GOOD_BAD

0x1bc - Receive Frame Count for Good and Bad 512 to 1,023 Bytes Frames

source

pub fn rx_1024tomaxoctets_frames_good_bad( &self ) -> &RX_1024TOMAXOCTETS_FRAMES_GOOD_BAD

0x1c0 - Receive Frame Count for Good and Bad 1,024 to Maxsize Bytes Frames

source

pub fn rx_unicast_frames_good(&self) -> &RX_UNICAST_FRAMES_GOOD

0x1c4 - Receive Frame Count for Good Unicast Frames

source

pub fn rx_length_error_frames(&self) -> &RX_LENGTH_ERROR_FRAMES

0x1c8 - Receive Frame Count for Length Error Frames

source

pub fn rx_out_of_range_type_frames(&self) -> &RX_OUT_OF_RANGE_TYPE_FRAMES

0x1cc - Receive Frame Count for Out of Range Frames

source

pub fn rx_pause_frames(&self) -> &RX_PAUSE_FRAMES

0x1d0 - Receive Frame Count for PAUSE Frames

source

pub fn rx_fifo_overflow_frames(&self) -> &RX_FIFO_OVERFLOW_FRAMES

0x1d4 - Receive Frame Count for FIFO Overflow Frames

source

pub fn rx_vlan_frames_good_bad(&self) -> &RX_VLAN_FRAMES_GOOD_BAD

0x1d8 - Receive Frame Count for Good and Bad VLAN Frames

source

pub fn rx_watchdog_error_frames(&self) -> &RX_WATCHDOG_ERROR_FRAMES

0x1dc - Receive Frame Count for Watchdog Error Frames

source

pub fn rx_receive_error_frames(&self) -> &RX_RECEIVE_ERROR_FRAMES

0x1e0 - Receive Frame Count for Receive Error Frames

source

pub fn rx_control_frames_good(&self) -> &RX_CONTROL_FRAMES_GOOD

0x1e4 - Receive Frame Count for Good Control Frames Frames

source

pub fn mmc_ipc_receive_interrupt_mask(&self) -> &MMC_IPC_RECEIVE_INTERRUPT_MASK

0x200 - MMC Receive Checksum Offload Interrupt Mask Register

source

pub fn mmc_ipc_receive_interrupt(&self) -> &MMC_IPC_RECEIVE_INTERRUPT

0x208 - MMC Receive Checksum Offload Interrupt Register

source

pub fn rxipv4_good_frames(&self) -> &RXIPV4_GOOD_FRAMES

0x210 - RxIPv4 Good Frames Register

source

pub fn rxipv4_header_error_frames(&self) -> &RXIPV4_HEADER_ERROR_FRAMES

0x214 - Receive IPV4 Header Error Frame Counter Register

source

pub fn rxipv4_no_payload_frames(&self) -> &RXIPV4_NO_PAYLOAD_FRAMES

0x218 - Receive IPV4 No Payload Frame Counter Register

source

pub fn rxipv4_fragmented_frames(&self) -> &RXIPV4_FRAGMENTED_FRAMES

0x21c - Receive IPV4 Fragmented Frame Counter Register

source

pub fn rxipv4_udp_checksum_disabled_frames( &self ) -> &RXIPV4_UDP_CHECKSUM_DISABLED_FRAMES

0x220 - Receive IPV4 UDP Checksum Disabled Frame Counter Register

source

pub fn rxipv6_good_frames(&self) -> &RXIPV6_GOOD_FRAMES

0x224 - RxIPv6 Good Frames Register

source

pub fn rxipv6_header_error_frames(&self) -> &RXIPV6_HEADER_ERROR_FRAMES

0x228 - Receive IPV6 Header Error Frame Counter Register

source

pub fn rxipv6_no_payload_frames(&self) -> &RXIPV6_NO_PAYLOAD_FRAMES

0x22c - Receive IPV6 No Payload Frame Counter Register

source

pub fn rxudp_good_frames(&self) -> &RXUDP_GOOD_FRAMES

0x230 - RxUDP Good Frames Register

source

pub fn rxudp_error_frames(&self) -> &RXUDP_ERROR_FRAMES

0x234 - RxUDP Error Frames Register

source

pub fn rxtcp_good_frames(&self) -> &RXTCP_GOOD_FRAMES

0x238 - RxTCP Good Frames Register

source

pub fn rxtcp_error_frames(&self) -> &RXTCP_ERROR_FRAMES

0x23c - RxTCP Error Frames Register

source

pub fn rxicmp_good_frames(&self) -> &RXICMP_GOOD_FRAMES

0x240 - RxICMP Good Frames Register

source

pub fn rxicmp_error_frames(&self) -> &RXICMP_ERROR_FRAMES

0x244 - RxICMP Error Frames Register

source

pub fn rxipv4_good_octets(&self) -> &RXIPV4_GOOD_OCTETS

0x250 - RxIPv4 Good Octets Register

source

pub fn rxipv4_header_error_octets(&self) -> &RXIPV4_HEADER_ERROR_OCTETS

0x254 - Receive IPV4 Header Error Octet Counter Register

source

pub fn rxipv4_no_payload_octets(&self) -> &RXIPV4_NO_PAYLOAD_OCTETS

0x258 - Receive IPV4 No Payload Octet Counter Register

source

pub fn rxipv4_fragmented_octets(&self) -> &RXIPV4_FRAGMENTED_OCTETS

0x25c - Receive IPV4 Fragmented Octet Counter Register

source

pub fn rxipv4_udp_checksum_disable_octets( &self ) -> &RXIPV4_UDP_CHECKSUM_DISABLE_OCTETS

0x260 - Receive IPV4 Fragmented Octet Counter Register

source

pub fn rxipv6_good_octets(&self) -> &RXIPV6_GOOD_OCTETS

0x264 - RxIPv6 Good Octets Register

source

pub fn rxipv6_header_error_octets(&self) -> &RXIPV6_HEADER_ERROR_OCTETS

0x268 - Receive IPV6 Header Error Octet Counter Register

source

pub fn rxipv6_no_payload_octets(&self) -> &RXIPV6_NO_PAYLOAD_OCTETS

0x26c - Receive IPV6 No Payload Octet Counter Register

source

pub fn rxudp_good_octets(&self) -> &RXUDP_GOOD_OCTETS

0x270 - Receive UDP Good Octets Register

source

pub fn rxudp_error_octets(&self) -> &RXUDP_ERROR_OCTETS

0x274 - Receive UDP Error Octets Register

source

pub fn rxtcp_good_octets(&self) -> &RXTCP_GOOD_OCTETS

0x278 - Receive TCP Good Octets Register

source

pub fn rxtcp_error_octets(&self) -> &RXTCP_ERROR_OCTETS

0x27c - Receive TCP Error Octets Register

source

pub fn rxicmp_good_octets(&self) -> &RXICMP_GOOD_OCTETS

0x280 - Receive ICMP Good Octets Register

source

pub fn rxicmp_error_octets(&self) -> &RXICMP_ERROR_OCTETS

0x284 - Receive ICMP Error Octets Register

source

pub fn timestamp_control(&self) -> &TIMESTAMP_CONTROL

0x700 - Timestamp Control Register

source

pub fn sub_second_increment(&self) -> &SUB_SECOND_INCREMENT

0x704 - Sub-Second Increment Register

source

pub fn system_time_seconds(&self) -> &SYSTEM_TIME_SECONDS

0x708 - System Time - Seconds Register

source

pub fn system_time_nanoseconds(&self) -> &SYSTEM_TIME_NANOSECONDS

0x70c - System Time Nanoseconds Register

source

pub fn system_time_seconds_update(&self) -> &SYSTEM_TIME_SECONDS_UPDATE

0x710 - System Time - Seconds Update Register

source

pub fn system_time_nanoseconds_update(&self) -> &SYSTEM_TIME_NANOSECONDS_UPDATE

0x714 - System Time Nanoseconds Update Register

source

pub fn timestamp_addend(&self) -> &TIMESTAMP_ADDEND

0x718 - Timestamp Addend Register

source

pub fn target_time_seconds(&self) -> &TARGET_TIME_SECONDS

0x71c - Target Time Seconds Register

source

pub fn target_time_nanoseconds(&self) -> &TARGET_TIME_NANOSECONDS

0x720 - Target Time Nanoseconds Register

source

pub fn system_time_higher_word_seconds( &self ) -> &SYSTEM_TIME_HIGHER_WORD_SECONDS

0x724 - System Time - Higher Word Seconds Register

source

pub fn timestamp_status(&self) -> &TIMESTAMP_STATUS

0x728 - Timestamp Status Register

source

pub fn pps_control(&self) -> &PPS_CONTROL

0x72c - PPS Control Register

source

pub fn bus_mode(&self) -> &BUS_MODE

0x1000 - Bus Mode Register

source

pub fn transmit_poll_demand(&self) -> &TRANSMIT_POLL_DEMAND

0x1004 - Transmit Poll Demand Register

source

pub fn receive_poll_demand(&self) -> &RECEIVE_POLL_DEMAND

0x1008 - Receive Poll Demand Register

source

pub fn receive_descriptor_list_address( &self ) -> &RECEIVE_DESCRIPTOR_LIST_ADDRESS

0x100c - Receive Descriptor Address Register

source

pub fn transmit_descriptor_list_address( &self ) -> &TRANSMIT_DESCRIPTOR_LIST_ADDRESS

0x1010 - Transmit descripter Address Register

source

pub fn status(&self) -> &STATUS

0x1014 - Status Register

source

pub fn operation_mode(&self) -> &OPERATION_MODE

0x1018 - Operation Mode Register

source

pub fn interrupt_enable(&self) -> &INTERRUPT_ENABLE

0x101c - Interrupt Enable Register

source

pub fn missed_frame_and_buffer_overflow_counter( &self ) -> &MISSED_FRAME_AND_BUFFER_OVERFLOW_COUNTER

0x1020 - Missed Frame and Buffer Overflow Counter Register

source

pub fn receive_interrupt_watchdog_timer( &self ) -> &RECEIVE_INTERRUPT_WATCHDOG_TIMER

0x1024 - Receive Interrupt Watchdog Timer Register

source

pub fn ahb_status(&self) -> &AHB_STATUS

0x102c - AHB Status Register

source

pub fn current_host_transmit_descriptor( &self ) -> &CURRENT_HOST_TRANSMIT_DESCRIPTOR

0x1048 - Current Host Transmit Descriptor Register

source

pub fn current_host_receive_descriptor( &self ) -> &CURRENT_HOST_RECEIVE_DESCRIPTOR

0x104c - Current Host Receive Descriptor Register

source

pub fn current_host_transmit_buffer_address( &self ) -> &CURRENT_HOST_TRANSMIT_BUFFER_ADDRESS

0x1050 - Current Host Transmit Buffer Address Register

source

pub fn current_host_receive_buffer_address( &self ) -> &CURRENT_HOST_RECEIVE_BUFFER_ADDRESS

0x1054 - Current Host Receive Buffer Address Register

source

pub fn hw_feature(&self) -> &HW_FEATURE

0x1058 - HW Feature Register

Trait Implementations§

source§

impl Debug for ETH0

source§

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

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

impl Deref for ETH0

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

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

Dereferences the value.
source§

impl Send for ETH0

Auto Trait Implementations§

§

impl Freeze for ETH0

§

impl RefUnwindSafe for ETH0

§

impl !Sync for ETH0

§

impl Unpin for ETH0

§

impl UnwindSafe for ETH0

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.