Hi maintainers, This patch series is v4 to introduce support for MUCSE N500/N210 1Gbps Ethernet controllers. I divide codes into multiple series, this is the first one which only register netdev without true tx/rx functions. The driver has been tested on the following platform: - Kernel version: 6.16.0 - Intel Xeon Processor Changelog: v3 -> v4: [patch 1/5]: 1. Remove redundant label. 2. Simplify 'rnpgbe_init_module' function. [patch 2/5]: 1. Remove 'back' define in structure define. 2. Remove no-use 'static int bd_number'. 3. Remove no-use 'pf2fw_mbox_mask' define in 'struct mucse_mbx_info'. [patch 3/5]: 1. Fix min() is not assigned bug in 'mucse_read_mbx'. 2. Fix v define to u32 in 'mucse_mbx_reset'. 3. Use USEC_PER_SEC instead of hardcode. [patch 4/5]: 1. Optimize 'mucse_fw_send_cmd_wait' 2. Optimize 'struct mbx_fw_cmd_reply' variable declaration. 3. Fix missing initialization of err in 'mucse_mbx_get_capability'. [patch 5/5]: 1. Optimize 'rnpgbe_get_permanent_mac'. 2. Remove no-need init netdev->perm_addr. 3. Remove addr in structure 'mucse_hw'. 4. Add 'netdev->stats.tx_dropped++' in 'rnpgbe_xmit_frame'. links: v3: https://lore.kernel.org/netdev/20250812093937.882045-1-dong100@xxxxxxxxx/ v2: https://lore.kernel.org/netdev/20250721113238.18615-1-dong100@xxxxxxxxx/ v1: https://lore.kernel.org/netdev/20250703014859.210110-1-dong100@xxxxxxxxx/ Dong Yibo (5): net: rnpgbe: Add build support for rnpgbe net: rnpgbe: Add n500/n210 chip support net: rnpgbe: Add basic mbx ops support net: rnpgbe: Add basic mbx_fw support net: rnpgbe: Add register_netdev .../device_drivers/ethernet/index.rst | 1 + .../device_drivers/ethernet/mucse/rnpgbe.rst | 21 + MAINTAINERS | 8 + drivers/net/ethernet/Kconfig | 1 + drivers/net/ethernet/Makefile | 1 + drivers/net/ethernet/mucse/Kconfig | 34 ++ drivers/net/ethernet/mucse/Makefile | 7 + drivers/net/ethernet/mucse/rnpgbe/Makefile | 11 + drivers/net/ethernet/mucse/rnpgbe/rnpgbe.h | 138 ++++++ .../net/ethernet/mucse/rnpgbe/rnpgbe_chip.c | 163 +++++++ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_hw.h | 15 + .../net/ethernet/mucse/rnpgbe/rnpgbe_main.c | 341 ++++++++++++++ .../net/ethernet/mucse/rnpgbe/rnpgbe_mbx.c | 443 ++++++++++++++++++ .../net/ethernet/mucse/rnpgbe/rnpgbe_mbx.h | 31 ++ .../net/ethernet/mucse/rnpgbe/rnpgbe_mbx_fw.c | 264 +++++++++++ .../net/ethernet/mucse/rnpgbe/rnpgbe_mbx_fw.h | 201 ++++++++ 16 files changed, 1680 insertions(+) create mode 100644 Documentation/networking/device_drivers/ethernet/mucse/rnpgbe.rst create mode 100644 drivers/net/ethernet/mucse/Kconfig create mode 100644 drivers/net/ethernet/mucse/Makefile create mode 100644 drivers/net/ethernet/mucse/rnpgbe/Makefile create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe.h create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_chip.c create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_hw.h create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_mbx.c create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_mbx.h create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_mbx_fw.c create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_mbx_fw.h -- 2.25.1