Skip to main content

mss_mac_queue_t

Type Alias mss_mac_queue_t 

Source
pub type mss_mac_queue_t = mss_mac_queue;
Expand description

//** Per queue specific info for device management structure.

This structure instantiates the queue specific information for managing the MSS Ethernet MAC driver.

Aliased Type§

#[repr(C)]
pub struct mss_mac_queue_t {
Show 30 fields pub tx_desc_tab: [mss_mac_tx_desc; 16], pub rx_desc_tab: [mss_mac_rx_desc; 64], pub tx_caller_info: [*mut c_void; 16], pub rx_caller_info: [*mut c_void; 64], pub pckt_tx_callback: Option<unsafe extern "C" fn(*mut c_void, u32, *mut mss_mac_tx_desc, *mut c_void)>, pub pckt_rx_callback: Option<unsafe extern "C" fn(*mut c_void, u32, *mut u8, u32, *mut mss_mac_rx_desc, *mut c_void)>, pub nb_available_tx_desc: u32, pub current_tx_desc: u32, pub nb_available_rx_desc: u32, pub next_free_rx_desc_index: u32, pub first_rx_desc_index: u32, pub rx_discard: u32, pub overflow_counter: u32, pub tries: u32, pub in_isr: i32, pub int_status: *mut u32, pub int_mask: *mut u32, pub int_enable: *mut u32, pub int_disable: *mut u32, pub receive_q_ptr: *mut u32, pub transmit_q_ptr: *mut u32, pub dma_rxbuf_size: *mut u32, pub ingress: u64, pub egress: u64, pub rx_overflow: u64, pub hresp_error: u64, pub rx_restart: u64, pub tx_amba_errors: u64, pub tx_restart: u64, pub tx_reenable: u64,
}

Fields§

§tx_desc_tab: [mss_mac_tx_desc; 16]

< Transmit descriptor table

§rx_desc_tab: [mss_mac_rx_desc; 64]

< Receive descriptor table

§tx_caller_info: [*mut c_void; 16]

< Pointers to tx user specific data

§rx_caller_info: [*mut c_void; 64]

< Pointers to rx user specific data

§pckt_tx_callback: Option<unsafe extern "C" fn(*mut c_void, u32, *mut mss_mac_tx_desc, *mut c_void)>

< Pointer to transmit handler call back function

§pckt_rx_callback: Option<unsafe extern "C" fn(*mut c_void, u32, *mut u8, u32, *mut mss_mac_rx_desc, *mut c_void)>

< Pointer to receive handler call back function

§nb_available_tx_desc: u32

< Number of free TX descriptors available

§current_tx_desc: u32

< Oldest in the queue…

§nb_available_rx_desc: u32

< Number of free RX descriptors available

§next_free_rx_desc_index: u32

< Next RX descriptor to allocate

§first_rx_desc_index: u32

< Descriptor to process next when receive handler called

§rx_discard: u32

< If set, silently discard incoming packets

§overflow_counter: u32

< Overflows since last normal receive operation

§tries: u32

< Keeps track of failure to sends…

§in_isr: i32

< Set when processing ISR so functions don’t call PLIC enable/disable for protection

§int_status: *mut u32

< interrupt status

§int_mask: *mut u32

< interrupt mask

§int_enable: *mut u32

< interrupt enable

§int_disable: *mut u32

< interrupt disable

§receive_q_ptr: *mut u32

< RX queue pointer

§transmit_q_ptr: *mut u32

< TX queue pointer

§dma_rxbuf_size: *mut u32

< RX queue buffer size

§ingress: u64

< Count of bytes received on this queue

§egress: u64

< Count of bytes transmitted on this queue

§rx_overflow: u64

< Number of receive overflow events on this queue

§hresp_error: u64

< Number of receive hresp error events on this queue

§rx_restart: u64

< Number of times reception has been restarted on this queue

§tx_amba_errors: u64

< Number of receive amba error events on this queue

§tx_restart: u64

< Number of times transmission has been restarted on this queue

§tx_reenable: u64

< Number of times transmission has been reenabled on this queue