Message
Jiawen Wu
Oct. 14, 2020, 5:54 a.m. UTC
v3: Merge some recent changes in the main repo, fix the checkpatch warnings. v2: Re-order patches and fix some known problems. v1: Introduce txgbe PMD. Jiawen Wu (56): net/txgbe: add build and doc infrastructure net/txgbe: add ethdev probe and remove net/txgbe: add device init and uninit net/txgbe: add error types and registers net/txgbe: add MAC type and bus lan id net/txgbe: add HW infrastructure and dummy function net/txgbe: add EEPROM functions net/txgbe: add HW init and reset operation net/txgbe: add PHY init net/txgbe: add module identify net/txgbe: add PHY reset net/txgbe: add info get operation net/txgbe: add interrupt operation net/txgbe: add device configure operation net/txgbe: add link status change net/txgbe: add multi-speed link setup net/txgbe: add autoc read and write net/txgbe: add MAC address operations net/txgbe: add unicast hash bitmap net/txgbe: add Rx and Tx init net/txgbe: add Rx and Tx queues setup and release net/txgbe: add Rx and Tx start and stop net/txgbe: add packet type net/txgbe: fill simple transmit function net/txgbe: fill transmit function with hardware offload net/txgbe: fill Tx prepare function net/txgbe: fill receive functions net/txgbe: add device start operation net/txgbe: add Rx and Tx data path start and stop net/txgbe: add device stop and close operations net/txgbe: support Rx interrupt net/txgbe: add Rx and Tx queue info get net/txgbe: add device stats get net/txgbe: add device xstats get net/txgbe: add queue stats mapping net/txgbe: add VLAN handle support net/txgbe: add SWFW semaphore and lock net/txgbe: add PF module init and uninit for SRIOV net/txgbe: add process mailbox operation net/txgbe: add PF module configure for SRIOV net/txgbe: add VMDq configure net/txgbe: add RSS support net/txgbe: add DCB support net/txgbe: add flow control support net/txgbe: add FC auto negotiation support net/txgbe: add priority flow control support net/txgbe: add device promiscuous and allmulticast mode net/txgbe: add MTU set operation net/txgbe: add FW version get operation net/txgbe: add EEPROM info get operation net/txgbe: add register dump support net/txgbe: support device LED on and off net/txgbe: add mirror rule operations net/txgbe: add PTP support net/txgbe: add DCB info get operation net/txgbe: add Rx and Tx descriptor status MAINTAINERS | 7 + doc/guides/nics/features/txgbe.ini | 54 + doc/guides/nics/txgbe.rst | 50 + drivers/net/meson.build | 1 + drivers/net/txgbe/base/meson.build | 26 + drivers/net/txgbe/base/txgbe.h | 16 + drivers/net/txgbe/base/txgbe_dcb.c | 360 ++ drivers/net/txgbe/base/txgbe_dcb.h | 121 + drivers/net/txgbe/base/txgbe_dcb_hw.c | 282 ++ drivers/net/txgbe/base/txgbe_dcb_hw.h | 24 + drivers/net/txgbe/base/txgbe_devids.h | 40 + drivers/net/txgbe/base/txgbe_dummy.h | 657 +++ drivers/net/txgbe/base/txgbe_eeprom.c | 581 +++ drivers/net/txgbe/base/txgbe_eeprom.h | 64 + drivers/net/txgbe/base/txgbe_hw.c | 3783 +++++++++++++++ drivers/net/txgbe/base/txgbe_hw.h | 112 + drivers/net/txgbe/base/txgbe_mbx.c | 332 ++ drivers/net/txgbe/base/txgbe_mbx.h | 93 + drivers/net/txgbe/base/txgbe_mng.c | 396 ++ drivers/net/txgbe/base/txgbe_mng.h | 176 + drivers/net/txgbe/base/txgbe_osdep.h | 181 + drivers/net/txgbe/base/txgbe_phy.c | 2247 +++++++++ drivers/net/txgbe/base/txgbe_phy.h | 375 ++ drivers/net/txgbe/base/txgbe_regs.h | 1887 ++++++++ drivers/net/txgbe/base/txgbe_status.h | 122 + drivers/net/txgbe/base/txgbe_type.h | 705 +++ drivers/net/txgbe/meson.build | 18 + drivers/net/txgbe/rte_pmd_txgbe.h | 37 + drivers/net/txgbe/rte_pmd_txgbe_version.map | 3 + drivers/net/txgbe/txgbe_ethdev.c | 4276 +++++++++++++++++ drivers/net/txgbe/txgbe_ethdev.h | 414 ++ drivers/net/txgbe/txgbe_logs.h | 54 + drivers/net/txgbe/txgbe_pf.c | 887 ++++ drivers/net/txgbe/txgbe_ptypes.c | 673 +++ drivers/net/txgbe/txgbe_ptypes.h | 351 ++ drivers/net/txgbe/txgbe_regs_group.h | 54 + drivers/net/txgbe/txgbe_rxtx.c | 4660 +++++++++++++++++++ drivers/net/txgbe/txgbe_rxtx.h | 417 ++ 38 files changed, 24536 insertions(+) create mode 100644 doc/guides/nics/features/txgbe.ini create mode 100644 doc/guides/nics/txgbe.rst create mode 100644 drivers/net/txgbe/base/meson.build create mode 100644 drivers/net/txgbe/base/txgbe.h create mode 100644 drivers/net/txgbe/base/txgbe_dcb.c create mode 100644 drivers/net/txgbe/base/txgbe_dcb.h create mode 100644 drivers/net/txgbe/base/txgbe_dcb_hw.c create mode 100644 drivers/net/txgbe/base/txgbe_dcb_hw.h create mode 100644 drivers/net/txgbe/base/txgbe_devids.h create mode 100644 drivers/net/txgbe/base/txgbe_dummy.h create mode 100644 drivers/net/txgbe/base/txgbe_eeprom.c create mode 100644 drivers/net/txgbe/base/txgbe_eeprom.h create mode 100644 drivers/net/txgbe/base/txgbe_hw.c create mode 100644 drivers/net/txgbe/base/txgbe_hw.h create mode 100644 drivers/net/txgbe/base/txgbe_mbx.c create mode 100644 drivers/net/txgbe/base/txgbe_mbx.h create mode 100644 drivers/net/txgbe/base/txgbe_mng.c create mode 100644 drivers/net/txgbe/base/txgbe_mng.h create mode 100644 drivers/net/txgbe/base/txgbe_osdep.h create mode 100644 drivers/net/txgbe/base/txgbe_phy.c create mode 100644 drivers/net/txgbe/base/txgbe_phy.h create mode 100644 drivers/net/txgbe/base/txgbe_regs.h create mode 100644 drivers/net/txgbe/base/txgbe_status.h create mode 100644 drivers/net/txgbe/base/txgbe_type.h create mode 100644 drivers/net/txgbe/meson.build create mode 100644 drivers/net/txgbe/rte_pmd_txgbe.h create mode 100644 drivers/net/txgbe/rte_pmd_txgbe_version.map create mode 100644 drivers/net/txgbe/txgbe_ethdev.c create mode 100644 drivers/net/txgbe/txgbe_ethdev.h create mode 100644 drivers/net/txgbe/txgbe_logs.h create mode 100644 drivers/net/txgbe/txgbe_pf.c create mode 100644 drivers/net/txgbe/txgbe_ptypes.c create mode 100644 drivers/net/txgbe/txgbe_ptypes.h create mode 100644 drivers/net/txgbe/txgbe_regs_group.h create mode 100644 drivers/net/txgbe/txgbe_rxtx.c create mode 100644 drivers/net/txgbe/txgbe_rxtx.h
Comments
On 10/14/2020 6:54 AM, Jiawen Wu wrote: > v3: Merge some recent changes in the main repo, > fix the checkpatch warnings. > v2: Re-order patches and fix some known problems. > v1: Introduce txgbe PMD. > > Jiawen Wu (56): > net/txgbe: add build and doc infrastructure > net/txgbe: add ethdev probe and remove > net/txgbe: add device init and uninit > net/txgbe: add error types and registers > net/txgbe: add MAC type and bus lan id > net/txgbe: add HW infrastructure and dummy function > net/txgbe: add EEPROM functions > net/txgbe: add HW init and reset operation > net/txgbe: add PHY init > net/txgbe: add module identify > net/txgbe: add PHY reset > net/txgbe: add info get operation > net/txgbe: add interrupt operation > net/txgbe: add device configure operation > net/txgbe: add link status change > net/txgbe: add multi-speed link setup > net/txgbe: add autoc read and write > net/txgbe: add MAC address operations > net/txgbe: add unicast hash bitmap > net/txgbe: add Rx and Tx init > net/txgbe: add Rx and Tx queues setup and release > net/txgbe: add Rx and Tx start and stop > net/txgbe: add packet type > net/txgbe: fill simple transmit function > net/txgbe: fill transmit function with hardware offload > net/txgbe: fill Tx prepare function > net/txgbe: fill receive functions > net/txgbe: add device start operation > net/txgbe: add Rx and Tx data path start and stop > net/txgbe: add device stop and close operations > net/txgbe: support Rx interrupt > net/txgbe: add Rx and Tx queue info get > net/txgbe: add device stats get > net/txgbe: add device xstats get > net/txgbe: add queue stats mapping > net/txgbe: add VLAN handle support > net/txgbe: add SWFW semaphore and lock > net/txgbe: add PF module init and uninit for SRIOV > net/txgbe: add process mailbox operation > net/txgbe: add PF module configure for SRIOV > net/txgbe: add VMDq configure > net/txgbe: add RSS support > net/txgbe: add DCB support > net/txgbe: add flow control support > net/txgbe: add FC auto negotiation support > net/txgbe: add priority flow control support > net/txgbe: add device promiscuous and allmulticast mode > net/txgbe: add MTU set operation > net/txgbe: add FW version get operation > net/txgbe: add EEPROM info get operation > net/txgbe: add register dump support > net/txgbe: support device LED on and off > net/txgbe: add mirror rule operations > net/txgbe: add PTP support > net/txgbe: add DCB info get operation > net/txgbe: add Rx and Tx descriptor status > Hi Jiawen, Thanks for the effort, driver looks mostly good, only I put a few minor comments. Also can you please update the release notes (doc/guides/rel_notes/release_20_11.rst) to announce the new PMD? I think it can be part of first patch. Also after patch merged, can you please send a web patch [1] to add your device to the https://core.dpdk.org/supported/#nics? [1] https://git.dpdk.org/tools/dpdk-web/