]> git.baikalelectronics.ru Git - kernel.git/commit
net: ena: support new LLQ acceleration mode
authorArthur Kiyanovski <akiyano@amazon.com>
Tue, 21 Jul 2020 13:38:11 +0000 (16:38 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 21 Jul 2020 22:59:04 +0000 (15:59 -0700)
commit08221af8f936f3af17ce5b329886260a5d124fbc
treebc85c254b30af9da6b6438e87ed33e2bf1f11183
parent66d7d775d319e0323f91f5f1f85b2bcbdc325f57
net: ena: support new LLQ acceleration mode

New devices add a new hardware acceleration engine, which adds some
restrictions to the driver.
Metadata descriptor must be present for each packet and the maximum
burst size between two doorbells is now limited to a number
advertised by the device.

This patch adds:
1. A handshake protocol between the driver and the device, so the
device will enable the accelerated queues only when both sides
support it.

2. The driver support for the new acceleration engine:
2.1. Send metadata descriptor for each Tx packet.
2.2. Limit the number of packets sent between doorbells.(*)

(*) A previous driver implementation of this feature was comitted in
commit 6d1d0af07d07 ("net: ena: add handling of llq max tx burst size")
however the design of the interface between the driver and device
changed since then. This change is reflected in this commit.

Signed-off-by: Netanel Belgazal <netanel@amazon.com>
Signed-off-by: Arthur Kiyanovski <akiyano@amazon.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/amazon/ena/ena_admin_defs.h
drivers/net/ethernet/amazon/ena/ena_com.c
drivers/net/ethernet/amazon/ena/ena_com.h
drivers/net/ethernet/amazon/ena/ena_eth_com.c
drivers/net/ethernet/amazon/ena/ena_eth_com.h
drivers/net/ethernet/amazon/ena/ena_netdev.c
drivers/net/ethernet/amazon/ena/ena_netdev.h