mbox series

[v3,net-next,00/16] introduce mt7986 ethernet support

Message ID cover.1653069056.git.lorenzo@kernel.org (mailing list archive)
Headers show
Series introduce mt7986 ethernet support | expand

Message

Lorenzo Bianconi May 20, 2022, 6:11 p.m. UTC
Add support for mt7986-eth driver available on mt7986 soc.

Changes since v2:
- rely on GFP_KERNEL whenever possible
- define mtk_reg_map struct to introduce soc register map and avoid macros
- improve comments

Changes since v1:
- drop SRAM option
- convert ring->dma to void
- convert scratch_ring to void
- enable port4
- fix irq dts bindings
- drop gmac1 support from mt7986a-rfb dts for the moment

Lorenzo Bianconi (16):
  arm64: dts: mediatek: mt7986: introduce ethernet nodes
  dt-bindings: net: mediatek,net: add mt7986-eth binding
  net: ethernet: mtk_eth_soc: rely on GFP_KERNEL for dma_alloc_coherent
    whenever possible
  net: ethernet: mtk_eth_soc: move tx dma desc configuration in
    mtk_tx_set_dma_desc
  net: ethernet: mtk_eth_soc: add txd_size to mtk_soc_data
  net: ethernet: mtk_eth_soc: rely on txd_size in
    mtk_tx_alloc/mtk_tx_clean
  net: ethernet: mtk_eth_soc: rely on txd_size in mtk_desc_to_tx_buf
  net: ethernet: mtk_eth_soc: rely on txd_size in txd_to_idx
  net: ethernet: mtk_eth_soc: add rxd_size to mtk_soc_data
  net: ethernet: mtk_eth_soc: rely on txd_size field in
    mtk_poll_tx/mtk_poll_rx
  net: ethernet: mtk_eth_soc: rely on rxd_size field in
    mtk_rx_alloc/mtk_rx_clean
  net: ethernet: mtk_eth_soc: introduce device register map
  net: ethernet: mtk_eth_soc: introduce MTK_NETSYS_V2 support
  net: ethernet: mtk_eth_soc: convert ring dma pointer to void
  net: ethernet: mtk_eth_soc: convert scratch_ring pointer to void
  net: ethernet: mtk_eth_soc: introduce support for mt7986 chipset

 .../devicetree/bindings/net/mediatek,net.yaml | 141 ++-
 arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts  |  74 ++
 arch/arm64/boot/dts/mediatek/mt7986a.dtsi     |  39 +
 arch/arm64/boot/dts/mediatek/mt7986b-rfb.dts  |  70 ++
 drivers/net/ethernet/mediatek/mtk_eth_soc.c   | 834 +++++++++++++-----
 drivers/net/ethernet/mediatek/mtk_eth_soc.h   | 305 ++++---
 6 files changed, 1113 insertions(+), 350 deletions(-)

Comments

Jakub Kicinski May 21, 2022, 1:25 a.m. UTC | #1
On Fri, 20 May 2022 20:11:23 +0200 Lorenzo Bianconi wrote:
> Add support for mt7986-eth driver available on mt7986 soc.
> 
> Changes since v2:
> - rely on GFP_KERNEL whenever possible
> - define mtk_reg_map struct to introduce soc register map and avoid macros
> - improve comments
> 
> Changes since v1:
> - drop SRAM option
> - convert ring->dma to void
> - convert scratch_ring to void
> - enable port4
> - fix irq dts bindings
> - drop gmac1 support from mt7986a-rfb dts for the moment