#[repr(C)]pub struct mss_mac_queue {Show 30 fields
pub tx_desc_tab: [mss_mac_tx_desc_t; 16],
pub rx_desc_tab: [mss_mac_rx_desc_t; 64],
pub tx_caller_info: [*mut c_void; 16],
pub rx_caller_info: [*mut c_void; 64],
pub pckt_tx_callback: mss_mac_transmit_callback_t,
pub pckt_rx_callback: mss_mac_receive_callback_t,
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,
}Expand description
//** Per queue specific info for device management structure.
This structure instantiates the queue specific information for managing the MSS Ethernet MAC driver.
Fields§
§tx_desc_tab: [mss_mac_tx_desc_t; 16]< Transmit descriptor table
rx_desc_tab: [mss_mac_rx_desc_t; 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: mss_mac_transmit_callback_t< Pointer to transmit handler call back function
pckt_rx_callback: mss_mac_receive_callback_t< 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
Trait Implementations§
Source§impl Clone for mss_mac_queue
impl Clone for mss_mac_queue
Source§fn clone(&self) -> mss_mac_queue
fn clone(&self) -> mss_mac_queue
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more