mbox series

[net-next,v3,0/6] add sriov support for wangxun NICs

Message ID 587FAB7876D85676+20240415110225.75132-1-mengyuanlou@net-swift.com (mailing list archive)
Headers show
Series add sriov support for wangxun NICs | expand

Message

Mengyuan Lou April 15, 2024, 10:54 a.m. UTC
Add sriov_configure for ngbe and txgbe drivers.
Reallocate queue and irq resources when sriov is enabled.
Add wx_msg_task in interrupts handler, which is used to process the
configuration sent by vfs.
Add ping_vf for wx_pf to tell vfs about pf link change.

changes v3:
- Jakub Kicinski
Do not accept any new implementations of the old SR-IOV API.
So remove ndo_vf_xxx in these patches.
changes v2:
- Simon Horman:
Fix some used uninitialised.
- Sunil:
Use poll + yield with delay instead of busy poll of 10 times
in mbx_lock obtain.
Split ndo_vf_xxx , msg_task and flow into separate patches.

Mengyuan Lou (6):
  net: libwx: Add malibox api for wangxun pf drivers
  net: libwx: Add sriov api for wangxun nics
  net: libwx: Redesign flow when sriov is enabled
  net: libwx: Add msg task func
  net: ngbe: add sriov function support
  net: txgbe: add sriov function support

 drivers/net/ethernet/wangxun/libwx/Makefile   |    2 +-
 drivers/net/ethernet/wangxun/libwx/wx_hw.c    |  310 ++++-
 drivers/net/ethernet/wangxun/libwx/wx_hw.h    |    4 +
 drivers/net/ethernet/wangxun/libwx/wx_lib.c   |  146 ++-
 drivers/net/ethernet/wangxun/libwx/wx_mbx.c   |  191 +++
 drivers/net/ethernet/wangxun/libwx/wx_mbx.h   |   86 ++
 drivers/net/ethernet/wangxun/libwx/wx_sriov.c | 1052 +++++++++++++++++
 drivers/net/ethernet/wangxun/libwx/wx_sriov.h |   14 +
 drivers/net/ethernet/wangxun/libwx/wx_type.h  |   99 +-
 drivers/net/ethernet/wangxun/ngbe/ngbe_main.c |   58 +-
 drivers/net/ethernet/wangxun/ngbe/ngbe_mdio.c |   10 +
 drivers/net/ethernet/wangxun/ngbe/ngbe_type.h |    2 +
 .../net/ethernet/wangxun/txgbe/txgbe_irq.c    |   25 +-
 .../net/ethernet/wangxun/txgbe/txgbe_main.c   |   24 +
 .../net/ethernet/wangxun/txgbe/txgbe_phy.c    |    8 +
 .../net/ethernet/wangxun/txgbe/txgbe_type.h   |    4 +-
 16 files changed, 2006 insertions(+), 29 deletions(-)
 create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_mbx.c
 create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_mbx.h
 create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_sriov.c
 create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_sriov.h

Comments

Jakub Kicinski April 15, 2024, 6:27 p.m. UTC | #1
On Mon, 15 Apr 2024 18:54:27 +0800 Mengyuan Lou wrote:
> Do not accept any new implementations of the old SR-IOV API.
> So remove ndo_vf_xxx in these patches.

But you're not adding support for switchdev mode either, 
so how are you going to configure them?
Mengyuan Lou April 16, 2024, 2:55 a.m. UTC | #2
> 2024年4月16日 02:27,Jakub Kicinski <kuba@kernel.org> 写道:
> 
> On Mon, 15 Apr 2024 18:54:27 +0800 Mengyuan Lou wrote:
>> Do not accept any new implementations of the old SR-IOV API.
>> So remove ndo_vf_xxx in these patches.
> 
> But you're not adding support for switchdev mode either, 
> so how are you going to configure them?

Do you mean .sriov_configure?
Had implement it in patch2 and add it patch5/6.

I have missed any other interfaces?

Thanks.
Lou
>
Jakub Kicinski April 16, 2024, 2:31 p.m. UTC | #3
On Tue, 16 Apr 2024 10:55:16 +0800 mengyuanlou@net-swift.com wrote:
> > On Mon, 15 Apr 2024 18:54:27 +0800 Mengyuan Lou wrote:  
> >> Do not accept any new implementations of the old SR-IOV API.
> >> So remove ndo_vf_xxx in these patches.  
> > 
> > But you're not adding support for switchdev mode either, 
> > so how are you going to configure them?  
> 
> Do you mean .sriov_configure?
> Had implement it in patch2 and add it patch5/6.

No, I mean configuring the forwarding, VF MAC addrs, getting stats, etc.
Mengyuan Lou May 14, 2024, 10:24 a.m. UTC | #4
> 2024年4月16日 22:31,Jakub Kicinski <kuba@kernel.org> 写道:
> 
> On Tue, 16 Apr 2024 10:55:16 +0800 mengyuanlou@net-swift.com wrote:
>>> On Mon, 15 Apr 2024 18:54:27 +0800 Mengyuan Lou wrote:  
>>>> Do not accept any new implementations of the old SR-IOV API.
>>>> So remove ndo_vf_xxx in these patches.  
>>> 
>>> But you're not adding support for switchdev mode either, 
>>> so how are you going to configure them?  
>> 
>> Do you mean .sriov_configure?
>> Had implement it in patch2 and add it patch5/6.
> 
> No, I mean configuring the forwarding, VF MAC addrs, getting stats, etc.


These Apis will be added in vf driver which will be submitted later.