GMAC driver structure.
#include <gmac_raw_2.h>
Data Fields | |
gmac_queue_t | gmac_queue_list [GMAC_QUE_N] |
Base Queue list params. More... | |
struct netif * | netif |
Reference to lwIP netif structure. More... | |
Gmac * | p_hw |
Pointer to HW register base. More... | |
gmac_rx_descriptor_t | rx_desc [GMAC_RX_BUFFERS] |
Pointer to allocated TX buffer. More... | |
struct pbuf * | rx_pbuf [GMAC_RX_BUFFERS] |
RX pbuf pointer list. More... | |
sys_sem_t | rx_sem |
RX task notification semaphore. More... | |
uint8_t | tx_buf [GMAC_TX_BUFFERS][GMAC_TX_UNITSIZE] |
TX buffers. More... | |
gmac_tx_descriptor_t | tx_desc [GMAC_TX_BUFFERS] |
Pointer to Tx descriptor list (must be 8-byte aligned). More... | |
uint32_t | us_rx_idx |
RX index for current processing TD. More... | |
uint32_t | us_tx_idx |
Circular buffer head pointer by upper layer (buffer to be sent). More... | |
gmac_queue_t gmac_device::gmac_queue_list[GMAC_QUE_N] |
Base Queue list params.
Referenced by gmac_dev_get_tx_buffer(), gmac_dev_get_tx_load(), gmac_dev_read(), gmac_dev_rx_buf_used(), gmac_dev_set_rx_callback(), gmac_dev_set_tx_wakeup_callback(), gmac_dev_tx_buf_used(), gmac_dev_write(), gmac_dev_write_nocopy(), gmac_handler(), gmac_init_mem(), gmac_reset_rx_mem(), and gmac_reset_tx_mem().
struct netif* gmac_device::netif |
Reference to lwIP netif structure.
Referenced by ethernetif_init(), and gmac_task().
Gmac* gmac_device::p_hw |
Pointer to HW register base.
Referenced by gmac_dev_reset(), gmac_dev_set_rx_callback(), gmac_dev_write(), gmac_dev_write_nocopy(), gmac_handler(), gmac_reset_rx_mem(), and gmac_reset_tx_mem().
gmac_rx_descriptor_t gmac_device::rx_desc[GMAC_RX_BUFFERS] |
Pointer to allocated TX buffer.
Section 3.6 of AMBA 2.0 spec states that burst should not cross 1K Boundaries. Receive buffer manager writes are burst of 2 words => 3 lsb bits of the address shall be set to 0.Pointer to Rx descriptor list (must be 8-byte aligned).
Referenced by gmac_low_level_input(), gmac_rx_init(), and gmac_rx_populate_queue().
struct pbuf* gmac_device::rx_pbuf[GMAC_RX_BUFFERS] |
RX pbuf pointer list.
Referenced by gmac_low_level_input(), gmac_rx_init(), and gmac_rx_populate_queue().
sys_sem_t gmac_device::rx_sem |
RX task notification semaphore.
Referenced by ethernetif_init(), GMAC_Handler(), and gmac_task().
uint8_t gmac_device::tx_buf[GMAC_TX_BUFFERS][GMAC_TX_UNITSIZE] |
TX buffers.
Referenced by gmac_tx_init().
gmac_tx_descriptor_t gmac_device::tx_desc[GMAC_TX_BUFFERS] |
Pointer to Tx descriptor list (must be 8-byte aligned).
Referenced by gmac_low_level_output(), and gmac_tx_init().
uint32_t gmac_device::us_rx_idx |
RX index for current processing TD.
Referenced by gmac_low_level_input(), and gmac_rx_init().
uint32_t gmac_device::us_tx_idx |
Circular buffer head pointer by upper layer (buffer to be sent).
Referenced by gmac_low_level_output(), and gmac_tx_init().