[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250721113238.18615-1-dong100@mucse.com>
Date: Mon, 21 Jul 2025 19:32:23 +0800
From: Dong Yibo <dong100@...se.com>
To: andrew+netdev@...n.ch,
davem@...emloft.net,
edumazet@...gle.com,
kuba@...nel.org,
pabeni@...hat.com,
horms@...nel.org,
corbet@....net,
gur.stavi@...wei.com,
maddy@...ux.ibm.com,
mpe@...erman.id.au,
danishanwar@...com,
lee@...ger.us,
gongfan1@...wei.com,
lorenzo@...nel.org,
geert+renesas@...der.be,
Parthiban.Veerasooran@...rochip.com,
lukas.bulwahn@...hat.com,
alexanderduyck@...com,
richardcochran@...il.com
Cc: netdev@...r.kernel.org,
linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org,
dong100@...se.com
Subject: [PATCH v2 00/15] Add driver for 1Gbe network chips from MUCSE
Hi maintainers,
This patch series introduces support for MUCSE N500/N210 1Gbps Ethernet
controllers. Only basic tx/rx is included, more features can be added in
the future.
The driver has been tested on the following platform:
- Kernel version: 6.16.0-rc3
- Intel Xeon Processor
Changelog:
v1 -> v2:
[patch 01/15]:
1. Fix changed section in MAINTAINERs file by mistake.
2. Fix odd indentaition in 'drivers/net/ethernet/mucse/Kconfig'.
3. Drop pointless driver version.
4. Remove pr_info prints.
5. Remove no need 'memset' for priv after alloc_etherdev_mq.
6. Fix __ function names.
7. Fix description errors from 'kdoc summry'.
[patch 02/15]:
1. Fix define by using the BIT() macro.
2. Remove wrong 'void *' cast.
3. Fix 'reverse Christmas tree' format for local variables.
4. Fix description errors from 'kdoc summry'.
[patch 03/15]:
1. Remove inline functions in C files.
2. Remove use s32, use int.
3. Use iopoll to instead rolling own.
4. Fix description errors from 'kdoc summry'.
[patch 04/15]:
1. Using __le32/__le16 in little endian define.
2. Remove all defensive code.
3. Remove pcie hotplug relative code.
4. Fix 'replace one error code with another' error.
5. Turn 'fw error code' to 'linux/POSIX error code'.
6. Fix description errors from 'kdoc summry'.
[patch 05/15]:
1. Use iopoll to instead rolling own.
2. Use 'linux/POSIX error code'.
3. Use devlink to download flash.
4. Fix description errors from 'kdoc summry'.
[patch 06/15] - [patch 15/15]:
1. Check errors similar to the patches [1-5].
2. Fix description errors from 'kdoc summry'.
v1: Initial submission
https://lore.kernel.org/netdev/20250703014859.210110-1-dong100@mucse.com/T/#t
Dong Yibo (15):
net: rnpgbe: Add build support for rnpgbe
net: rnpgbe: Add n500/n210 chip support
net: rnpgbe: Add basic mbx ops support
net: rnpgbe: Add get_capability mbx_fw ops support
net: rnpgbe: Add download firmware for n210 chip
net: rnpgbe: Add some functions for hw->ops
net: rnpgbe: Add get mac from hw
net: rnpgbe: Add irq support
net: rnpgbe: Add netdev register and init tx/rx memory
net: rnpgbe: Add netdev irq in open
net: rnpgbe: Add setup hw ring-vector, true up/down hw
net: rnpgbe: Add link up handler
net: rnpgbe: Add base tx functions
net: rnpgbe: Add base rx function
net: rnpgbe: Add ITR for rx
.../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 | 35 +
drivers/net/ethernet/mucse/Makefile | 7 +
drivers/net/ethernet/mucse/rnpgbe/Makefile | 13 +
drivers/net/ethernet/mucse/rnpgbe/rnpgbe.h | 733 ++++++
.../net/ethernet/mucse/rnpgbe/rnpgbe_chip.c | 593 +++++
drivers/net/ethernet/mucse/rnpgbe/rnpgbe_hw.h | 66 +
.../net/ethernet/mucse/rnpgbe/rnpgbe_lib.c | 2320 +++++++++++++++++
.../net/ethernet/mucse/rnpgbe/rnpgbe_lib.h | 175 ++
.../net/ethernet/mucse/rnpgbe/rnpgbe_main.c | 901 +++++++
.../net/ethernet/mucse/rnpgbe/rnpgbe_mbx.c | 623 +++++
.../net/ethernet/mucse/rnpgbe/rnpgbe_mbx.h | 49 +
.../net/ethernet/mucse/rnpgbe/rnpgbe_mbx_fw.c | 753 ++++++
.../net/ethernet/mucse/rnpgbe/rnpgbe_mbx_fw.h | 695 +++++
.../net/ethernet/mucse/rnpgbe/rnpgbe_sfc.c | 476 ++++
.../net/ethernet/mucse/rnpgbe/rnpgbe_sfc.h | 30 +
20 files changed, 7501 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_lib.c
create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_lib.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
create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_sfc.c
create mode 100644 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_sfc.h
--
2.25.1
Powered by blists - more mailing lists