[net-next v6 0/4] rework IRQ handling in mtk_eth_soc

Frank Wunderlich linux at fw-web.de
Thu Jun 19 06:21:20 PDT 2025


From: Frank Wunderlich <frank-w at public-files.de>

This series introduces named IRQs while keeping the index based way
for older dts.
Further it makes some cleanup like adding consts for index access and
avoids loading first IRQ which was not used on non SHARED_INT SoCs.
    
changes:
    v6:
    - change irq names from tx/rx to fe1/fe2 because reserved irqs
      are usable and not bound to specific function
    - dropped Simons RB because of this
    - updated description of patch "skip first IRQ if not used" and
      use MTK_FE_IRQ_SHARED instead of 0 in condition too
    - add "only use legacy mode on missing IRQ name" patch
    
    v5:
    - fixed typo in patch 1
    - moved comments from previous patch #3 to patch #1 with changes suggested by simon
    - rename consts to be compatible with upcoming RSS/LRO changes
      MTK_ETH_IRQ_SHARED => MTK_FE_IRQ_SHARED
      MTK_ETH_IRQ_TX => MTK_FE_IRQ_TX
      MTK_ETH_IRQ_RX => MTK_FE_IRQ_RX
      MTK_ETH_IRQ_MAX => MTK_FE_IRQ_NUM
    - change commit title and description in patch 3
    
    v4:
    - calculate max from last (rx) irq index and use it for array size too
    - drop >2 condition as max is already 2 and drop the else continue
    - update comment to explain which IRQs are taken in legacy way
    
    v3:
    added patches
    - #2 (add constants for irq index)
    - #3 (skip first IRQ on ! MTK_SHARED_INT)
    to the v2 non-series patch
    
    https://patchwork.kernel.org/project/netdevbpf/patch/20250615084521.32329-1-linux@fw-web.de/
    
    Tested on BPI-R4/mt7988 with IRQ names and BPI-R2/mt7623 and BPI-R3/mt7986 with upstreamed
    dts via index-mode.
    I do not have any MTK_SHARED_INT (mt7621/mt7628) boards to testing.


Frank Wunderlich (4):
  net: ethernet: mtk_eth_soc: support named IRQs
  net: ethernet: mtk_eth_soc: add consts for irq index
  net: ethernet: mtk_eth_soc: skip first IRQ if not used
  net: ethernet: mtk_eth_soc: only use legacy mode on missing IRQ name

 drivers/net/ethernet/mediatek/mtk_eth_soc.c | 69 ++++++++++++++++-----
 drivers/net/ethernet/mediatek/mtk_eth_soc.h |  7 ++-
 2 files changed, 58 insertions(+), 18 deletions(-)

-- 
2.43.0




More information about the linux-arm-kernel mailing list