Lines Matching +full:rx +full:- +full:device
1 .. SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
12 In basic operation the device notifies the host about new events
15 The device may also be polled for events via NAPI without receiving
23 of event (packet Rx and Tx) processing.
30 of the NAPI instance while the method is the driver-specific event
37 -----------
55 ------------
64 argument - drivers can process completions for any number of Tx
66 Rx packets. Rx processing is usually much more expensive.
68 In other words for Rx processing the ``budget`` argument limits how many
69 packets driver can process in a single poll. Rx specific APIs like page
77 skb Tx completions and no Rx or XDP packets.
96 or return ``budget - 1``.
101 -------------
109 As mentioned in the :ref:`drv_ctrl` section - napi_disable() and subsequent
118 --------------------------
121 the NAPI instance - until NAPI polling finishes any further
125 to IRQ being auto-masked by the device) should use the napi_schedule_prep()
128 .. code-block:: c
130 if (napi_schedule_prep(&v->napi)) {
131 mydrv_mask_rxtx_irq(v->idx);
133 __napi_schedule(&v->napi);
138 .. code-block:: c
140 if (budget && napi_complete_done(&v->napi, work_done)) {
141 mydrv_unmask_rxtx_irq(v->idx);
142 return min(work_done, budget - 1);
151 -------------------------
156 abstraction without specific user-facing semantics. That said, most networking
160 (queue pair is a set of a single Rx and single Tx queue).
163 or Rx and Tx queues can be serviced by separate NAPI instances on a single
168 each channel can be either ``rx``, ``tx`` or ``combined``. It's not clear
171 a configuration of 1 ``rx``, 1 ``tx`` and 1 ``combined`` channel is expected
172 to utilize 3 interrupts, 2 Rx and 2 Tx queues.
179 It's not currently possible to query IDs used by a given device.
182 -----------------------
186 by the device. There are cases where software coalescing is helpful.
198 ------------
201 the device interrupt fires. As is the case with any busy polling it trades
211 ---------------
216 Very high request-per-second applications (especially routing/forwarding
222 polling operation periodically, and the driver should keep the device IRQs
235 -------------
240 NAPI instances of that device. Each NAPI instance will spawn a separate
241 thread (called ``napi/${ifc-name}-${napi-id}``).