Lines Matching refs:rx_queue
58 struct efx_rx_queue *rx_queue = efx_channel_get_rx_queue(channel); in __ef100_rx_packet() local
59 struct efx_rx_buffer *rx_buf = efx_rx_buffer(rx_queue, in __ef100_rx_packet()
73 if (channel->type->receive_raw(rx_queue, mark)) in __ef100_rx_packet()
137 ++rx_queue->rx_packets; in __ef100_rx_packet()
138 rx_queue->rx_bytes += rx_buf->len; in __ef100_rx_packet()
144 efx_free_rx_buffers(rx_queue, rx_buf, 1); in __ef100_rx_packet()
149 static void ef100_rx_packet(struct efx_rx_queue *rx_queue, unsigned int index) in ef100_rx_packet() argument
151 struct efx_rx_buffer *rx_buf = efx_rx_buffer(rx_queue, index); in ef100_rx_packet()
152 struct efx_channel *channel = efx_rx_queue_channel(rx_queue); in ef100_rx_packet()
153 struct efx_nic *efx = rx_queue->efx; in ef100_rx_packet()
157 efx_rx_queue_index(rx_queue), index); in ef100_rx_packet()
174 struct efx_rx_queue *rx_queue = efx_channel_get_rx_queue(channel); in efx_ef100_ev_rx() local
186 ef100_rx_packet(rx_queue, in efx_ef100_ev_rx()
187 rx_queue->removed_count & rx_queue->ptr_mask); in efx_ef100_ev_rx()
188 ++rx_queue->removed_count; in efx_ef100_ev_rx()
192 void ef100_rx_write(struct efx_rx_queue *rx_queue) in ef100_rx_write() argument
194 unsigned int notified_count = rx_queue->notified_count; in ef100_rx_write()
200 while (notified_count != rx_queue->added_count) { in ef100_rx_write()
201 idx = notified_count & rx_queue->ptr_mask; in ef100_rx_write()
202 rx_buf = efx_rx_buffer(rx_queue, idx); in ef100_rx_write()
203 rxd = efx_rx_desc(rx_queue, idx); in ef100_rx_write()
209 if (notified_count == rx_queue->notified_count) in ef100_rx_write()
214 rx_queue->added_count & rx_queue->ptr_mask); in ef100_rx_write()
215 efx_writed_page(rx_queue->efx, &rxdb, in ef100_rx_write()
216 ER_GZ_RX_RING_DOORBELL, efx_rx_queue_index(rx_queue)); in ef100_rx_write()
217 if (rx_queue->grant_credits) in ef100_rx_write()
219 rx_queue->notified_count = notified_count; in ef100_rx_write()
220 if (rx_queue->grant_credits) in ef100_rx_write()
221 schedule_work(&rx_queue->grant_work); in ef100_rx_write()