Add basic PMD library and doc build infrastructure Update maintainers file to claim responsibility.
Signed-off-by: Wenbo Cao <caowe...@mucse.com> Reviewed-by: Thomas Monjalon <tho...@monjalon.net> --- MAINTAINERS | 6 +++ doc/guides/nics/features/rnp.ini | 8 ++++ doc/guides/nics/index.rst | 1 + doc/guides/nics/rnp.rst | 82 ++++++++++++++++++++++++++++++++ drivers/net/meson.build | 1 + drivers/net/rnp/meson.build | 11 +++++ drivers/net/rnp/rnp_ethdev.c | 3 ++ 7 files changed, 112 insertions(+) create mode 100644 doc/guides/nics/features/rnp.ini create mode 100644 doc/guides/nics/rnp.rst create mode 100644 drivers/net/rnp/meson.build create mode 100644 drivers/net/rnp/rnp_ethdev.c diff --git a/MAINTAINERS b/MAINTAINERS index 0f940ad713..f9e0a312db 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1011,6 +1011,12 @@ F: drivers/net/r8169/ F: doc/guides/nics/r8169.rst F: doc/guides/nics/features/r8169.ini +Mucse rnp +M: Wenbo Cao <caowe...@mucse.com> +F: drivers/net/rnp +F: doc/guides/nics/rnp.rst +F: doc/guides/nics/features/rnp.ini + Solarflare sfc_efx M: Andrew Rybchenko <andrew.rybche...@oktetlabs.ru> F: drivers/common/sfc_efx/ diff --git a/doc/guides/nics/features/rnp.ini b/doc/guides/nics/features/rnp.ini new file mode 100644 index 0000000000..2ad04ee330 --- /dev/null +++ b/doc/guides/nics/features/rnp.ini @@ -0,0 +1,8 @@ +; +; Supported features of the 'rnp' network poll mode driver. +; +; Refer to default.ini for the full list of available PMD features. +; +[Features] +Linux = Y +x86-64 = Y diff --git a/doc/guides/nics/index.rst b/doc/guides/nics/index.rst index 50688d9f64..6ce7ef24df 100644 --- a/doc/guides/nics/index.rst +++ b/doc/guides/nics/index.rst @@ -61,6 +61,7 @@ Network Interface Controller Drivers pfe qede r8169 + rnp sfc_efx softnic tap diff --git a/doc/guides/nics/rnp.rst b/doc/guides/nics/rnp.rst new file mode 100644 index 0000000000..618baa836a --- /dev/null +++ b/doc/guides/nics/rnp.rst @@ -0,0 +1,82 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright(c) 2023 Mucse IC Design Ltd. + +RNP Poll Mode driver +==================== + +The RNP ETHDEV PMD (**librte_net_rnp**) provides poll mode ethdev +driver support for the inbuilt network device found in the **Mucse RNP** + +Prerequisites +------------- +More information can be found at `Mucse, Official Website +<https://mucse.com/productDetail>`_. +For English version you can download the below pdf. +`<https://muchuang-bucket.oss-cn-beijing.aliyuncs.com/aea70403c0de4fa58cd507632009103dMUCSE%20Product%20Manual%202023.pdf>` + +Supported Chipsets and NICs +--------------------------- + +- MUCSE Ethernet Controller N10 Series for 10GbE or 40GbE (Dual-port) + +Chip Basic Overview +------------------- +N10 isn't normal with traditional PCIe network card, The chip only have two pcie physical function. +The Chip max can support eight ports. + +.. code-block:: console + + +------------------------------------------------+ + | OS | + | PCIE (PF0) | + | | | | | | + +----|------------|------------|------------|----+ + | | | | + +-|------------|------------|------------|-+ + | Extend Mac | + | VLAN/Unicast/multicast | + | Promisc Mode Ctrl | + | | + +-|------------|------------|------------|-+ + | | | | + +---|---+ +---|---+ +---|---+ +---|---+ + | | | | | | | | + | MAC 0 | | MAC 1 | | MAC 2 | | MAC 3 | + | | | | | | | | + +---|---+ +---|---+ +---|---+ +---|---+ + | | | | + +---|---+ +---|---+ +---|---+ +---|---+ + | | | | | | | | + | PORT 0| | PORT 1| | PORT 2| | PORT 3| + | | | | | | | | + +-------+ +-------+ +-------+ +-------+ + + +------------------------------------------------+ + | OS | + | PCIE (PF1) | + | | | | | | + +----|------------|------------|------------|----+ + | | | | + +-|------------|------------|------------|-+ + | Extend Mac | + | VLAN/Unicast/multicast | + | Promisc Mode Ctrl | + | | + +-|------------|------------|------------|-+ + | | | | + +---|---+ +---|---+ +---|---+ +---|---+ + | | | | | | | | + | MAC 4 | | MAC 5 | | MAC 6 | | MAC 7 | + | | | | | | | | + +---|---+ +---|---+ +---|---+ +---|---+ + | | | | + +---|---+ +---|---+ +---|---+ +---|---+ + | | | | | | | | + | PORT 4| | PORT 5| | PORT 6| | PORT 7| + | | | | | | | | + +-------+ +-------+ +-------+ +-------+ + +Limitations or Known issues +--------------------------- + +BSD are not supported yet. diff --git a/drivers/net/meson.build b/drivers/net/meson.build index dafd637ba4..2e2327c760 100644 --- a/drivers/net/meson.build +++ b/drivers/net/meson.build @@ -54,6 +54,7 @@ drivers = [ 'qede', 'r8169', 'ring', + 'rnp', 'sfc', 'softnic', 'tap', diff --git a/drivers/net/rnp/meson.build b/drivers/net/rnp/meson.build new file mode 100644 index 0000000000..494f10efd0 --- /dev/null +++ b/drivers/net/rnp/meson.build @@ -0,0 +1,11 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(C) 2023 Mucse IC Design Ltd. +# +if not is_linux + build = false + reason = 'only supported on Linux' +endif + +sources = files( + 'rnp_ethdev.c', +) diff --git a/drivers/net/rnp/rnp_ethdev.c b/drivers/net/rnp/rnp_ethdev.c new file mode 100644 index 0000000000..9ce3c0b497 --- /dev/null +++ b/drivers/net/rnp/rnp_ethdev.c @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: BSD-3-Clause + * Copyright(C) 2023 Mucse IC Design Ltd. + */ -- 2.34.1