[PATCH v6 00/26] Net/SPNIC: support SPNIC into DPDK 22.03

Ferruh Yigit ferruh.yigit at intel.com
Fri Jan 21 11:22:10 CET 2022


On 1/21/2022 9:27 AM, Yanling Song wrote:
> On Wed, 19 Jan 2022 16:56:52 +0000
> Ferruh Yigit <ferruh.yigit at intel.com> wrote:
> 
>> On 12/30/2021 6:08 AM, Yanling Song wrote:
>>> The patchsets introduce SPNIC driver for Ramaxel's SPNxx serial NIC
>>> cards into DPDK 22.03. Ramaxel Memory Technology is a company which
>>> supply a lot of electric products: storage, communication, PCB...
>>> SPNxxx is a serial PCIE interface NIC cards:
>>> SPN110: 2 PORTs *25G
>>> SPN120: 4 PORTs *25G
>>> SPN130: 2 PORTs *100G
>>>    
>>
>> Hi Yanling,
>>
>> As far as I can see hnic (from Huawei) and this spnic drivers are
>> alike, what is the relation between these two?
>>
> It is hard to create a brand new driver from scratch, so we referenced
> to hinic driver when developing spnic.
> 

That is OK, but based on the familiarity of the code you may consider
keeping the original code Copyright, I didn't investigate in
that level but cc'ed hinic maintainers for info.
Also cc'ed Hemant for guidance.


But my question was more related to the HW, is there any relation between
the hinic HW and spnic HW? Like one is derived from other etc...

>>> The following is main features of our SPNIC:
>>> - TSO
>>> - LRO
>>> - Flow control
>>> - SR-IOV(Partially supported)
>>> - VLAN offload
>>> - VLAN filter
>>> - CRC offload
>>> - Promiscuous mode
>>> - RSS
>>>
>>> v6->v5, No real changes:
>>> 1. Move the fix of RTE_ETH_DEV_AUTOFILL_QUEUE_XSTATS from patch 26
>>> to patch 2; 2. Change the description of patch 26.
>>>
>>> v5->v4:
>>> 1. Add prefix "spinc_" for external functions;
>>> 2. Remove temporary MACRO: RTE_ETH_DEV_AUTOFILL_QUEUE_XSTATS
>>> 3. Do not use void* for keeping the type information
>>>
>>> v3->v4:
>>> 1. Fix ABI test failure;
>>> 2. Remove some descriptions in spnic.rst.
>>>
>>> v2->v3:
>>> 1. Fix clang compiling failure.
>>>
>>> v1->v2:
>>> 1. Fix coding style issues and compiling failures;
>>> 2. Only support linux in meson.build;
>>> 3. Use CLOCK_MONOTONIC_COARSE instead of
>>> CLOCK_MONOTONIC/CLOCK_MONOTONIC_RAW; 4. Fix time_before();
>>> 5. Remove redundant checks in spnic_dev_configure();
>>>
>>> Yanling Song (26):
>>>     drivers/net: introduce a new PMD driver
>>>     net/spnic: initialize the HW interface
>>>     net/spnic: add mbox message channel
>>>     net/spnic: introduce event queue
>>>     net/spnic: add mgmt module
>>>     net/spnic: add cmdq and work queue
>>>     net/spnic: add interface handling cmdq message
>>>     net/spnic: add hardware info initialization
>>>     net/spnic: support MAC and link event handling
>>>     net/spnic: add function info initialization
>>>     net/spnic: add queue pairs context initialization
>>>     net/spnic: support mbuf handling of Tx/Rx
>>>     net/spnic: support Rx congfiguration
>>>     net/spnic: add port/vport enable
>>>     net/spnic: support IO packets handling
>>>     net/spnic: add device configure/version/info
>>>     net/spnic: support RSS configuration update and get
>>>     net/spnic: support VLAN filtering and offloading
>>>     net/spnic: support promiscuous and allmulticast Rx modes
>>>     net/spnic: support flow control
>>>     net/spnic: support getting Tx/Rx queues info
>>>     net/spnic: net/spnic: support xstats statistics
>>>     net/spnic: support VFIO interrupt
>>>     net/spnic: support Tx/Rx queue start/stop
>>>     net/spnic: add doc infrastructure
>>>     net/spnic: fixes unsafe C style code
>>
>> <...>
> 



More information about the dev mailing list