Lines Matching +full:mtl +full:- +full:rx +full:- +full:config

9  * Copyright (c) 2014-2016 Advanced Micro Devices, Inc.
59 * Copyright (c) 2014-2016 Advanced Micro Devices, Inc.
120 #include <linux/dma-mapping.h>
137 #define XGBE_DRV_NAME "amd-xgbe"
151 #define XGBE_TX_MAX_BUF_SIZE (0x3fff & ~(64 - 1))
157 * - Maximum number of SKB frags
158 * - Maximum descriptors for contiguous TSO/GSO packet
159 * - Possible context descriptor
160 * - Possible TSO header descriptor
174 /* DMA cache settings - Outer sharable, write-back, write-allocate */
178 /* DMA cache settings - System, no caches used */
182 /* DMA cache settings - PCI device */
196 #define XGMAC_ETH_PREAMBLE (12 + 8) /* Inter-frame gap + preamble */
205 #define XGBE_MAC_ADDR_PROPERTY "mac-address"
206 #define XGBE_PHY_MODE_PROPERTY "phy-mode"
207 #define XGBE_DMA_IRQS_PROPERTY "amd,per-channel-interrupt"
208 #define XGBE_SPEEDSET_PROPERTY "amd,speed-set"
210 /* Device-tree clock names */
215 #define XGBE_ACPI_DMA_FREQ "amd,dma-freq"
216 #define XGBE_ACPI_PTP_FREQ "amd,ptp-freq"
232 /* Timestamp support - values based on 50MHz PTP clock
245 (((_x) + XGMAC_FIFO_UNIT - 1) & ~(XGMAC_FIFO_UNIT - 1))
253 * since the index is free-running and needs to be and-ed
258 ((_ring)->rdata + \
259 ((_idx) & ((_ring)->rdesc_count - 1)))
275 (((_x) + XGMAC_FLOW_CONTROL_UNIT - 1) & ~(XGMAC_FLOW_CONTROL_UNIT - 1))
277 (((_x) < 1024) ? 0 : ((_x) / XGMAC_FLOW_CONTROL_UNIT) - 2)
289 /* Auto-negotiation */
343 bitmap_copy((_dst)->link_modes._dname, \
344 (_src)->link_modes._sname, \
375 /* Common Rx and Tx descriptor mapping */
402 /* Tx-related ring data */
408 /* Rx-related ring data */
429 struct xgbe_tx_ring_data tx; /* Tx-related data */
430 struct xgbe_rx_ring_data rx; /* Rx-related data */ member
448 /* Ring lock - used just for TX rings at the moment */
464 /* Page allocation for RX buffers */
470 * cur - Tx: index of descriptor to be used for current transfer
471 * Rx: index of descriptor to check for packet availability
472 * dirty - Tx: index of descriptor to check for transfer complete
473 * Rx: index of descriptor to check for buffer reallocation
687 /* Rx Stats */
786 /* For RX coalescing */
792 /* For RX and TX threshold config */
796 /* For RX and TX Store and Forward Mode config */
800 /* For TX DMA Operate on Second Frame config */
808 /* For Timestamp config */
816 /* For Data Center Bridging config */
866 /* Retrieve new/next mode when trying to auto-negotiate */
871 /* Retrieve current auto-negotiation mode */
874 /* Configure auto-negotiation settings */
877 /* Set/override auto-negotiation advertisement settings */
881 /* Process results of auto-negotiation */
884 /* Pre/Post auto-negotiation support */
966 unsigned int rwk; /* PMT remote wake-up packet */
970 unsigned int ts; /* IEEE 1588-2008 Advanced Timestamp */
973 unsigned int rx_coe; /* Rx Checksum Offload */
980 unsigned int rx_fifo_size; /* MTL Receive FIFO Size */
981 unsigned int tx_fifo_size; /* MTL Transmit FIFO Size */
991 unsigned int l3l4_filter_num; /* Number of L3-L4 Filters */
994 unsigned int rx_q_cnt; /* Number of MTL Receive Queues */
995 unsigned int tx_q_cnt; /* Number of MTL Transmit Queues */
1035 void __iomem *rxtx_regs; /* SerDes Rx/Tx CSRs */
1108 /* Rings for Tx/Rx on a DMA channel */
1126 /* Tx/Rx common settings */
1139 /* Rx settings */
1148 /* Rx coalescing settings */
1153 /* Current Rx buffer size */
1242 /* Auto-negotiation state machine support */