Messages in this thread | | | From | Horatiu Vultur <> | Subject | [PATCH net-next v3 0/4] net: lan966x: Add support for FDMA | Date | Mon, 4 Apr 2022 15:06:51 +0200 |
| |
Currently when injecting or extracting a frame from CPU, the frame is given to the HW each word at a time. There is another way to inject/extract frames from CPU using FDMA(Frame Direct Memory Access). In this way the entire frame is given to the HW. This improves both RX and TX bitrate.
v2->v3: - move skb_tx_timestamp before the IFH is inserted, because in case of PHY timestamping, the PHY should not see the IFH. - use lower/upper_32_bits() - reimplement the RX path in case of memory pressure. - use devm_request_irq instead of devm_request_threaded_irq - add various checks for return values.
v1->v2: - fix typo in commit message in last patch - remove first patch as the changes are already there - make sure that there is space in skb to put the FCS - move skb_tx_timestamp closer to the handover of the frame to the HW
Horatiu Vultur (4): net: lan966x: Add registers that are used for FDMA. net: lan966x: Expose functions that are needed by FDMA net: lan966x: Add FDMA functionality net: lan966x: Update FDMA to change MTU.
.../net/ethernet/microchip/lan966x/Makefile | 2 +- .../ethernet/microchip/lan966x/lan966x_fdma.c | 783 ++++++++++++++++++ .../ethernet/microchip/lan966x/lan966x_main.c | 49 +- .../ethernet/microchip/lan966x/lan966x_main.h | 121 +++ .../ethernet/microchip/lan966x/lan966x_port.c | 3 + .../ethernet/microchip/lan966x/lan966x_regs.h | 106 +++ 6 files changed, 1052 insertions(+), 12 deletions(-) create mode 100644 drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c
-- 2.33.0
| |