Lines Matching refs:ring

83 #define ring_is_xdp(ring) \
84 test_bit(__IXGBEVF_TX_XDP_RING, &(ring)->state)
85 #define set_ring_xdp(ring) \
86 set_bit(__IXGBEVF_TX_XDP_RING, &(ring)->state)
87 #define clear_ring_xdp(ring) \
88 clear_bit(__IXGBEVF_TX_XDP_RING, &(ring)->state)
96 void *desc; /* descriptor ring memory */
97 dma_addr_t dma; /* phys. address of descriptor ring */
121 * associated with this ring, which is different for DCB and RSS modes
172 #define ring_uses_large_buffer(ring) \
173 test_bit(__IXGBEVF_RX_3K_BUFFER, &(ring)->state)
174 #define set_ring_uses_large_buffer(ring) \
175 set_bit(__IXGBEVF_RX_3K_BUFFER, &(ring)->state)
176 #define clear_ring_uses_large_buffer(ring) \
177 clear_bit(__IXGBEVF_RX_3K_BUFFER, &(ring)->state)
179 #define ring_uses_build_skb(ring) \
180 test_bit(__IXGBEVF_RX_BUILD_SKB_ENABLED, &(ring)->state)
181 #define set_ring_build_skb_enabled(ring) \
182 set_bit(__IXGBEVF_RX_BUILD_SKB_ENABLED, &(ring)->state)
183 #define clear_ring_build_skb_enabled(ring) \
184 clear_bit(__IXGBEVF_RX_BUILD_SKB_ENABLED, &(ring)->state)
186 static inline unsigned int ixgbevf_rx_bufsz(struct ixgbevf_ring *ring)
189 if (ring_uses_large_buffer(ring))
192 if (ring_uses_build_skb(ring))
198 static inline unsigned int ixgbevf_rx_pg_order(struct ixgbevf_ring *ring)
201 if (ring_uses_large_buffer(ring))
209 #define check_for_tx_hang(ring) \
210 test_bit(__IXGBEVF_TX_DETECT_HANG, &(ring)->state)
211 #define set_check_for_tx_hang(ring) \
212 set_bit(__IXGBEVF_TX_DETECT_HANG, &(ring)->state)
213 #define clear_check_for_tx_hang(ring) \
214 clear_bit(__IXGBEVF_TX_DETECT_HANG, &(ring)->state)
217 struct ixgbevf_ring *ring; /* pointer to linked list of rings */
221 u8 itr; /* current ITR setting for ring */
224 /* iterator for handling rings in ring container */
226 for (pos = (head).ring; pos != NULL; pos = pos->next)
234 * EICR and friends that represents the vector for this ring
244 struct ixgbevf_ring ring[0] ____cacheline_internodealigned_in_smp;
286 static inline u16 ixgbevf_desc_unused(struct ixgbevf_ring *ring)
288 u16 ntc = ring->next_to_clean;
289 u16 ntu = ring->next_to_use;
291 return ((ntc > ntu) ? 0 : ring->count) + ntc - ntu - 1;
294 static inline void ixgbevf_write_tail(struct ixgbevf_ring *ring, u32 value)
296 writel(value, ring->tail);