Lines Matching +full:use +full:- +full:dma +full:- +full:rx
5 * This program is dual-licensed; you may select either version 2 of
21 #include <linux/dma-mapping.h>
29 #define XLGMAC_DRV_NAME "dwc-xlgmac"
47 #define XLGMAC_TX_MAX_BUF_SIZE (0x3fff & ~(64 - 1))
93 * Always use XLGMAC_GET_DESC_DATA to access the descriptor data
97 ((_ring)->desc_data_head + \
98 ((idx) & ((_ring)->dma_desc_count - 1))); \
104 ((var) & GENMASK(_pos + _len - 1, _pos)) >> (_pos); \
111 ((_var) & GENMASK(_pos + _len - 1, _pos)) >> (_pos); \
119 _val = (_val << _pos) & GENMASK(_pos + _len - 1, _pos); \
120 _var = (_var & ~GENMASK(_pos + _len - 1, _pos)) | _val; \
128 _val = (_val << _pos) & GENMASK(_pos + _len - 1, _pos); \
129 _var = (_var & ~GENMASK(_pos + _len - 1, _pos)) | _val; \
168 /* MMC RX counters */
213 /* Common Tx and Rx DMA hardware descriptor */
240 /* Tx-related desc data */
246 /* Rx-related desc data */
284 * dma_desc_addr: DMA address of descriptor
290 * skb_dma: DMA address of SKB data
291 * skb_dma_len: Length of SKB DMA area
297 /* Tx/Rx -related data */
299 struct xlgmac_rx_desc_data rx; member
305 * context descriptor) has not been DMA'd yet the current state
320 /* Virtual/DMA addresses of DMA descriptor list and the total count */
325 /* Array of descriptor data corresponding the DMA descriptor
326 * (always use the XLGMAC_GET_DESC_DATA macro to access this data)
330 /* Page allocation for RX buffers */
335 * cur - Tx: index of descriptor to be used for current transfer
336 * Rx: index of descriptor to check for packet availability
337 * dirty - Tx: index of descriptor to check for transfer complete
338 * Rx: index of descriptor to check for buffer reallocation
362 /* Queue index and base address of queue's DMA registers */
448 /* For RX coalescing */
456 /* For RX and TX threshold config */
462 /* For RX and TX Store and Forward Mode config */
468 /* For TX DMA Operate on Second Frame config */
471 /* For RX and TX PBL config */
503 unsigned int rwk; /* PMT remote wake-up packet */
507 unsigned int ts; /* IEEE 1588-2008 Advanced Timestamp */
510 unsigned int rx_coe; /* Rx Checksum Offload */
519 unsigned int dma_width; /* DMA width */
523 unsigned int dma_debug; /* DMA Debug Registers */
527 unsigned int l3l4_filter_num; /* Number of L3-L4 Filters */
532 unsigned int rx_ch_cnt; /* Number of DMA Receive Channels */
533 unsigned int tx_ch_cnt; /* Number of DMA Transmit Channels */
563 /* Rings for Tx/Rx on a DMA channel */
573 /* Tx/Rx common settings */
582 /* Rx settings */
591 /* Rx coalescing settings */
596 /* Current Rx buffer size */