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