[PATCH net-next v2 0/6] bcm63xx_enet: major makeover of driver

From: Sieng Piaw Liew
Date: Thu Dec 24 2020 - 09:26:37 EST


This patch series aim to improve the bcm63xx_enet driver by integrating the
latest networking features, i.e. batched rx processing, BQL, build_skb, etc.

The newer enetsw SoCs are found to be able to do unaligned rx DMA by adding
NET_IP_ALIGN padding which, combined with these patches, improved packet
processing performance by ~50% on BCM6328.

Older non-enetsw SoCs still benefit mainly from rx batching. Performance
improvement of ~30% is observed on BCM6333.

The BCM63xx SoCs are designed for routers. As such, having BQL is beneficial
as well as trivial to add.

v2:
* Add xmit_more support and rx loop improvisation patches.
* Moved BQL netdev_reset_queue() to bcm_enet_stop()/bcm_enetsw_stop()
functions as suggested by Florian Fainelli.
* Improved commit messages.

Sieng Piaw Liew (6):
bcm63xx_enet: batch process rx path
bcm63xx_enet: add BQL support
bcm63xx_enet: add xmit_more support
bcm63xx_enet: alloc rx skb with NET_IP_ALIGN
bcm63xx_enet: convert to build_skb
bcm63xx_enet: improve rx loop

drivers/net/ethernet/broadcom/bcm63xx_enet.c | 184 ++++++++++---------
drivers/net/ethernet/broadcom/bcm63xx_enet.h | 14 +-
2 files changed, 103 insertions(+), 95 deletions(-)

--
2.17.1