From: Jie Liu <[email protected]> Adding a minimum maintainable directory structure for the network driver and request maintenance of the sxe driver.
Signed-off-by: Jie Liu <[email protected]> --- MAINTAINERS | 6 +++ doc/guides/nics/features/sxe.ini | 55 ++++++++++++++++++++ doc/guides/nics/features/sxe_vf.ini | 37 ++++++++++++++ doc/guides/nics/index.rst | 1 + doc/guides/nics/sxe.rst | 71 ++++++++++++++++++++++++++ doc/guides/rel_notes/release_26_03.rst | 4 ++ drivers/net/sxe/meson.build | 9 ++++ drivers/net/sxe/pf/sxe_ethdev.c | 3 ++ drivers/net/sxe/pf/sxe_ethdev.h | 3 ++ 9 files changed, 189 insertions(+) create mode 100644 doc/guides/nics/features/sxe.ini create mode 100644 doc/guides/nics/features/sxe_vf.ini create mode 100644 doc/guides/nics/sxe.rst create mode 100644 drivers/net/sxe/meson.build create mode 100644 drivers/net/sxe/pf/sxe_ethdev.c create mode 100644 drivers/net/sxe/pf/sxe_ethdev.h diff --git a/MAINTAINERS b/MAINTAINERS index d7d8dbdb25..034dea8908 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -859,6 +859,12 @@ F: drivers/net/intel/ipn3ke/ F: doc/guides/nics/ipn3ke.rst F: doc/guides/nics/features/ipn3ke.ini +Linkdata sxe +M: Jie Li <[email protected]> +F: drivers/net/sxe/ +F: doc/guides/nics/sxe.rst +F: doc/guides/nics/features/sxe*.ini + Marvell cnxk M: Nithin Dabilpuram <[email protected]> M: Kiran Kumar K <[email protected]> diff --git a/doc/guides/nics/features/sxe.ini b/doc/guides/nics/features/sxe.ini new file mode 100644 index 0000000000..a700ba3dc9 --- /dev/null +++ b/doc/guides/nics/features/sxe.ini @@ -0,0 +1,55 @@ +; +; Supported features of the 'sxe' network poll mode driver. +; +; Refer to default.ini for the full list of available PMD features. +; +[Features] +Speed capabilities = Y +Link speed configuration = Y +Link status = Y +Link status event = Y +Rx interrupt = Y +Queue start/stop = Y +Power mgmt address monitor = Y +MTU update = Y +Scattered Rx = Y +LRO = Y +TSO = Y +Promiscuous mode = Y +Allmulticast mode = Y +Unicast MAC filter = Y +Multicast MAC filter = Y +RSS hash = Y +RSS key update = Y +RSS reta update = Y +VMDq = Y +SR-IOV = Y +DCB = Y +VLAN filter = Y +Flow control = Y +Rate limitation = Y +Traffic manager = Y +Inline crypto = Y +CRC offload = P +VLAN offload = P +QinQ offload = P +L3 checksum offload = P +L4 checksum offload = P +MACsec offload = P +Inner L3 checksum = P +Inner L4 checksum = P +Packet type parsing = Y +Timesync = Y +Rx descriptor status = Y +Tx descriptor status = Y +Basic stats = Y +Extended stats = Y +Stats per queue = Y +FW version = Y +EEPROM dump = Y +Module EEPROM dump = Y +Registers dump = Y +Multiprocess aware = Y +Linux = Y +ARMv8 = Y +x86-64 = Y diff --git a/doc/guides/nics/features/sxe_vf.ini b/doc/guides/nics/features/sxe_vf.ini new file mode 100644 index 0000000000..7caf5435ae --- /dev/null +++ b/doc/guides/nics/features/sxe_vf.ini @@ -0,0 +1,37 @@ +; +; Supported features of the 'sxe_vf' network poll mode driver. +; +; Refer to default.ini for the full list of available PMD features. +; +[Features] +Link status = Y +Rx interrupt = Y +Power mgmt address monitor = Y +MTU update = Y +Scattered Rx = Y +LRO = Y +TSO = Y +Promiscuous mode = Y +Allmulticast mode = Y +Unicast MAC filter = Y +RSS hash = Y +RSS key update = Y +RSS reta update = Y +VLAN filter = Y +Inline crypto = Y +CRC offload = P +VLAN offload = P +QinQ offload = P +L3 checksum offload = P +L4 checksum offload = P +Inner L3 checksum = P +Inner L4 checksum = P +Packet type parsing = Y +Rx descriptor status = Y +Tx descriptor status = Y +Basic stats = Y +Extended stats = Y +Registers dump = Y +Linux = Y +ARMv8 = Y +x86-64 = Y diff --git a/doc/guides/nics/index.rst b/doc/guides/nics/index.rst index b00ed998c5..3d9e359f6b 100644 --- a/doc/guides/nics/index.rst +++ b/doc/guides/nics/index.rst @@ -67,6 +67,7 @@ Network Interface Controller Drivers rnp sfc_efx softnic + sxe tap thunderx txgbe diff --git a/doc/guides/nics/sxe.rst b/doc/guides/nics/sxe.rst new file mode 100644 index 0000000000..6f8b56d91c --- /dev/null +++ b/doc/guides/nics/sxe.rst @@ -0,0 +1,71 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright (C), 2022, Linkdata Technology Co., Ltd. + +SXE Poll Mode Driver +====================== + +The SXE PMD (librte_pmd_sxe) provides poll mode driver support +for Linkdata 1160-2X 10GE Ethernet Adapter. + +Features +-------- +- PXE boot +- PTP(Precision Time Protocol) +- VMDq(Virtual Machine Device Queues) +- SR-IOV,max 2PF,63VF per PF +- 128 L2 Ethernet MAC Address Filters (unicast and multicast) +- 64 L2 VLAN filters +- pldm over mctp over smbus +- 802.1q VLAN +- Low Latency Interrupts +- LRO +- Promiscuous mode +- Multicast mode +- Multiple queues for TX and RX +- Receiver Side Scaling (RSS) +- MAC/VLAN filtering +- Packet type information +- Checksum offload +- VLAN/QinQ stripping and inserting +- TSO offload +- Port hardware statistics +- Link state information +- Link flow control +- Interrupt mode for RX +- Scattered and gather for TX and RX +- DCB +- IEEE 1588 +- FW version +- Generic flow API + +Configuration +------------- + +Dynamic Logging Parameters +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +One may leverage EAL option "--log-level" to change default levels +for the log types supported by the driver. The option is used with +an argument typically consisting of two parts separated by a colon. + +SXE PMD provides the following log types available for control: + +- ``pmd.net.sxe.drv`` (default level is **INFO**) + + Affects driver-wide messages unrelated to any particular devices. + +- ``pmd.net.sxe.init`` (default level is **INFO**) + + Extra logging of the messages during PMD initialization. + +- ``pmd.net.sxe.rx`` (default level is **INFO**) + + Affects rx-wide messages. +- ``pmd.net.sxe.tx`` (default level is **INFO**) + + Affects tx-wide messages. + +------------------------------ + +Refer to the document :ref:`compiling and testing a PMD for a NIC <pmd_build_and_test>` +for details. diff --git a/doc/guides/rel_notes/release_26_03.rst b/doc/guides/rel_notes/release_26_03.rst index 15dabee7a1..fd8fc0c2e4 100644 --- a/doc/guides/rel_notes/release_26_03.rst +++ b/doc/guides/rel_notes/release_26_03.rst @@ -54,7 +54,11 @@ New Features This section is a comment. Do not overwrite or remove it. Also, make sure to start the actual text at the margin. ======================================================= +* **Updated Linkdata sxe ethernet driver.** + Added support for Linkdata NIC series, including 1160-2X (supporting 10G). + As these new models share hardware similarities with the existing 10G Sapphire NICs, + many of the existing configurations and practices are expected to apply. Removed Items ------------- diff --git a/drivers/net/sxe/meson.build b/drivers/net/sxe/meson.build new file mode 100644 index 0000000000..dad9ee44a0 --- /dev/null +++ b/drivers/net/sxe/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright (C), 2020, Wuxi Stars Micro System Technologies Co., Ltd. + +deps += ['hash'] +sources = files( + 'pf/sxe_ethdev.c', +) + +includes += include_directories('pf') diff --git a/drivers/net/sxe/pf/sxe_ethdev.c b/drivers/net/sxe/pf/sxe_ethdev.c new file mode 100644 index 0000000000..e31a23deeb --- /dev/null +++ b/drivers/net/sxe/pf/sxe_ethdev.c @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: BSD-3-Clause + * Copyright(c) 2015-2024 + */ diff --git a/drivers/net/sxe/pf/sxe_ethdev.h b/drivers/net/sxe/pf/sxe_ethdev.h new file mode 100644 index 0000000000..e31a23deeb --- /dev/null +++ b/drivers/net/sxe/pf/sxe_ethdev.h @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: BSD-3-Clause + * Copyright(c) 2015-2024 + */ -- 2.18.2

