mbox series

[iwl-next,v1,00/14] ice: support devlink subfunction

Message ID 20240507114516.9765-1-michal.swiatkowski@linux.intel.com (mailing list archive)
Headers show
Series ice: support devlink subfunction | expand

Message

Michal Swiatkowski May 7, 2024, 11:45 a.m. UTC
Hi,

Currently ice driver does not allow creating more than one networking
device per physical function. The only way to have more hardware backed
netdev is to use SR-IOV.

Following patchset adds support for devlink port API. For each new
pcisf type port, driver allocates new VSI, configures all resources
needed, including dynamically MSIX vectors, program rules and registers
new netdev.

This series supports only one Tx/Rx queue pair per subfunction.

Example commands:
devlink port add pci/0000:31:00.1 flavour pcisf pfnum 1 sfnum 1000
devlink port function set pci/0000:31:00.1/1 hw_addr 00:00:00:00:03:14
devlink port function set pci/0000:31:00.1/1 state active
devlink port function del pci/0000:31:00.1/1

Make the port representor and eswitch code generic to support
subfunction representor type.

VSI configuration is slightly different between VF and SF. It needs to
be reflected in the code.

Most recent previous patchset (not containing port representor for SF
support). [1]

[1] https://lore.kernel.org/netdev/20240417142028.2171-1-michal.swiatkowski@linux.intel.com/

Michal Swiatkowski (7):
  ice: treat subfunction VSI the same as PF VSI
  ice: create port representor for SF
  ice: don't set target VSI for subfunction
  ice: check if SF is ready in ethtool ops
  ice: netdevice ops for SF representor
  ice: support subfunction devlink Tx topology
  ice: basic support for VLAN in subfunctions

Piotr Raczynski (7):
  ice: add new VSI type for subfunctions
  ice: export ice ndo_ops functions
  ice: add basic devlink subfunctions support
  ice: allocate devlink for subfunction
  ice: base subfunction aux driver
  ice: implement netdev for subfunction
  ice: allow to activate and deactivate subfunction

 drivers/net/ethernet/intel/ice/Makefile       |   2 +
 .../net/ethernet/intel/ice/devlink/devlink.c  |  48 ++
 .../net/ethernet/intel/ice/devlink/devlink.h  |   1 +
 .../ethernet/intel/ice/devlink/devlink_port.c | 516 ++++++++++++++++++
 .../ethernet/intel/ice/devlink/devlink_port.h |  43 ++
 drivers/net/ethernet/intel/ice/ice.h          |  19 +-
 drivers/net/ethernet/intel/ice/ice_base.c     |   5 +-
 drivers/net/ethernet/intel/ice/ice_dcb_lib.c  |   1 +
 drivers/net/ethernet/intel/ice/ice_eswitch.c  |  85 ++-
 drivers/net/ethernet/intel/ice/ice_eswitch.h  |  22 +-
 drivers/net/ethernet/intel/ice/ice_ethtool.c  |   7 +-
 drivers/net/ethernet/intel/ice/ice_lib.c      |  52 +-
 drivers/net/ethernet/intel/ice/ice_lib.h      |   3 +
 drivers/net/ethernet/intel/ice/ice_main.c     |  66 ++-
 drivers/net/ethernet/intel/ice/ice_repr.c     | 195 +++++--
 drivers/net/ethernet/intel/ice/ice_repr.h     |  22 +-
 drivers/net/ethernet/intel/ice/ice_sf_eth.c   | 329 +++++++++++
 drivers/net/ethernet/intel/ice/ice_sf_eth.h   |  33 ++
 .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.c  |  21 +
 .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.h  |  13 +
 drivers/net/ethernet/intel/ice/ice_sriov.c    |   4 +-
 drivers/net/ethernet/intel/ice/ice_txrx.c     |   2 +-
 drivers/net/ethernet/intel/ice/ice_type.h     |   1 +
 drivers/net/ethernet/intel/ice/ice_vf_lib.c   |   4 +-
 .../net/ethernet/intel/ice/ice_vsi_vlan_ops.c |   4 +
 drivers/net/ethernet/intel/ice/ice_xsk.c      |   2 +-
 26 files changed, 1362 insertions(+), 138 deletions(-)
 create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.c
 create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.h
 create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.c
 create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.h

Comments

Jiri Pirko May 9, 2024, 11:18 a.m. UTC | #1
Tue, May 07, 2024 at 01:45:01PM CEST, michal.swiatkowski@linux.intel.com wrote:
>Hi,
>
>Currently ice driver does not allow creating more than one networking
>device per physical function. The only way to have more hardware backed
>netdev is to use SR-IOV.
>
>Following patchset adds support for devlink port API. For each new
>pcisf type port, driver allocates new VSI, configures all resources
>needed, including dynamically MSIX vectors, program rules and registers
>new netdev.
>
>This series supports only one Tx/Rx queue pair per subfunction.
>
>Example commands:
>devlink port add pci/0000:31:00.1 flavour pcisf pfnum 1 sfnum 1000
>devlink port function set pci/0000:31:00.1/1 hw_addr 00:00:00:00:03:14
>devlink port function set pci/0000:31:00.1/1 state active
>devlink port function del pci/0000:31:00.1/1
>
>Make the port representor and eswitch code generic to support
>subfunction representor type.
>
>VSI configuration is slightly different between VF and SF. It needs to
>be reflected in the code.
>
>Most recent previous patchset (not containing port representor for SF
>support). [1]
>
>[1] https://lore.kernel.org/netdev/20240417142028.2171-1-michal.swiatkowski@linux.intel.com/
>


I don't understand howcome the patchset is v1, yet there are patches
that came through multiple iterations alread. Changelog is missing
completely :/


>Michal Swiatkowski (7):
>  ice: treat subfunction VSI the same as PF VSI
>  ice: create port representor for SF
>  ice: don't set target VSI for subfunction
>  ice: check if SF is ready in ethtool ops
>  ice: netdevice ops for SF representor
>  ice: support subfunction devlink Tx topology
>  ice: basic support for VLAN in subfunctions
>
>Piotr Raczynski (7):
>  ice: add new VSI type for subfunctions
>  ice: export ice ndo_ops functions
>  ice: add basic devlink subfunctions support
>  ice: allocate devlink for subfunction
>  ice: base subfunction aux driver
>  ice: implement netdev for subfunction
>  ice: allow to activate and deactivate subfunction
>
> drivers/net/ethernet/intel/ice/Makefile       |   2 +
> .../net/ethernet/intel/ice/devlink/devlink.c  |  48 ++
> .../net/ethernet/intel/ice/devlink/devlink.h  |   1 +
> .../ethernet/intel/ice/devlink/devlink_port.c | 516 ++++++++++++++++++
> .../ethernet/intel/ice/devlink/devlink_port.h |  43 ++
> drivers/net/ethernet/intel/ice/ice.h          |  19 +-
> drivers/net/ethernet/intel/ice/ice_base.c     |   5 +-
> drivers/net/ethernet/intel/ice/ice_dcb_lib.c  |   1 +
> drivers/net/ethernet/intel/ice/ice_eswitch.c  |  85 ++-
> drivers/net/ethernet/intel/ice/ice_eswitch.h  |  22 +-
> drivers/net/ethernet/intel/ice/ice_ethtool.c  |   7 +-
> drivers/net/ethernet/intel/ice/ice_lib.c      |  52 +-
> drivers/net/ethernet/intel/ice/ice_lib.h      |   3 +
> drivers/net/ethernet/intel/ice/ice_main.c     |  66 ++-
> drivers/net/ethernet/intel/ice/ice_repr.c     | 195 +++++--
> drivers/net/ethernet/intel/ice/ice_repr.h     |  22 +-
> drivers/net/ethernet/intel/ice/ice_sf_eth.c   | 329 +++++++++++
> drivers/net/ethernet/intel/ice/ice_sf_eth.h   |  33 ++
> .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.c  |  21 +
> .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.h  |  13 +
> drivers/net/ethernet/intel/ice/ice_sriov.c    |   4 +-
> drivers/net/ethernet/intel/ice/ice_txrx.c     |   2 +-
> drivers/net/ethernet/intel/ice/ice_type.h     |   1 +
> drivers/net/ethernet/intel/ice/ice_vf_lib.c   |   4 +-
> .../net/ethernet/intel/ice/ice_vsi_vlan_ops.c |   4 +
> drivers/net/ethernet/intel/ice/ice_xsk.c      |   2 +-
> 26 files changed, 1362 insertions(+), 138 deletions(-)
> create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.c
> create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.h
> create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.c
> create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.h
>
>-- 
>2.42.0
>
>
Michal Swiatkowski May 10, 2024, 7:24 a.m. UTC | #2
On Thu, May 09, 2024 at 01:18:29PM +0200, Jiri Pirko wrote:
> Tue, May 07, 2024 at 01:45:01PM CEST, michal.swiatkowski@linux.intel.com wrote:
> >Hi,
> >
> >Currently ice driver does not allow creating more than one networking
> >device per physical function. The only way to have more hardware backed
> >netdev is to use SR-IOV.
> >
> >Following patchset adds support for devlink port API. For each new
> >pcisf type port, driver allocates new VSI, configures all resources
> >needed, including dynamically MSIX vectors, program rules and registers
> >new netdev.
> >
> >This series supports only one Tx/Rx queue pair per subfunction.
> >
> >Example commands:
> >devlink port add pci/0000:31:00.1 flavour pcisf pfnum 1 sfnum 1000
> >devlink port function set pci/0000:31:00.1/1 hw_addr 00:00:00:00:03:14
> >devlink port function set pci/0000:31:00.1/1 state active
> >devlink port function del pci/0000:31:00.1/1
> >
> >Make the port representor and eswitch code generic to support
> >subfunction representor type.
> >
> >VSI configuration is slightly different between VF and SF. It needs to
> >be reflected in the code.
> >
> >Most recent previous patchset (not containing port representor for SF
> >support). [1]
> >
> >[1] https://lore.kernel.org/netdev/20240417142028.2171-1-michal.swiatkowski@linux.intel.com/
> >
> 
> 
> I don't understand howcome the patchset is v1, yet there are patches
> that came through multiple iterations alread. Changelog is missing
> completely :/
> 

What is wrong here? There is a link to previous patchset with whole
changlog and links to previous ones. I didn't add changlog here as it is
new patchset (partialy the same as from [1], because of that I added a
link). I can add the changlog from [1] if you want, but for me it can be
missleading.

> 
> >Michal Swiatkowski (7):
> >  ice: treat subfunction VSI the same as PF VSI
> >  ice: create port representor for SF
> >  ice: don't set target VSI for subfunction
> >  ice: check if SF is ready in ethtool ops
> >  ice: netdevice ops for SF representor
> >  ice: support subfunction devlink Tx topology
> >  ice: basic support for VLAN in subfunctions
> >
> >Piotr Raczynski (7):
> >  ice: add new VSI type for subfunctions
> >  ice: export ice ndo_ops functions
> >  ice: add basic devlink subfunctions support
> >  ice: allocate devlink for subfunction
> >  ice: base subfunction aux driver
> >  ice: implement netdev for subfunction
> >  ice: allow to activate and deactivate subfunction
> >
> > drivers/net/ethernet/intel/ice/Makefile       |   2 +
> > .../net/ethernet/intel/ice/devlink/devlink.c  |  48 ++
> > .../net/ethernet/intel/ice/devlink/devlink.h  |   1 +
> > .../ethernet/intel/ice/devlink/devlink_port.c | 516 ++++++++++++++++++
> > .../ethernet/intel/ice/devlink/devlink_port.h |  43 ++
> > drivers/net/ethernet/intel/ice/ice.h          |  19 +-
> > drivers/net/ethernet/intel/ice/ice_base.c     |   5 +-
> > drivers/net/ethernet/intel/ice/ice_dcb_lib.c  |   1 +
> > drivers/net/ethernet/intel/ice/ice_eswitch.c  |  85 ++-
> > drivers/net/ethernet/intel/ice/ice_eswitch.h  |  22 +-
> > drivers/net/ethernet/intel/ice/ice_ethtool.c  |   7 +-
> > drivers/net/ethernet/intel/ice/ice_lib.c      |  52 +-
> > drivers/net/ethernet/intel/ice/ice_lib.h      |   3 +
> > drivers/net/ethernet/intel/ice/ice_main.c     |  66 ++-
> > drivers/net/ethernet/intel/ice/ice_repr.c     | 195 +++++--
> > drivers/net/ethernet/intel/ice/ice_repr.h     |  22 +-
> > drivers/net/ethernet/intel/ice/ice_sf_eth.c   | 329 +++++++++++
> > drivers/net/ethernet/intel/ice/ice_sf_eth.h   |  33 ++
> > .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.c  |  21 +
> > .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.h  |  13 +
> > drivers/net/ethernet/intel/ice/ice_sriov.c    |   4 +-
> > drivers/net/ethernet/intel/ice/ice_txrx.c     |   2 +-
> > drivers/net/ethernet/intel/ice/ice_type.h     |   1 +
> > drivers/net/ethernet/intel/ice/ice_vf_lib.c   |   4 +-
> > .../net/ethernet/intel/ice/ice_vsi_vlan_ops.c |   4 +
> > drivers/net/ethernet/intel/ice/ice_xsk.c      |   2 +-
> > 26 files changed, 1362 insertions(+), 138 deletions(-)
> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.c
> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.h
> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.c
> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.h
> >
> >-- 
> >2.42.0
> >
> >
Jiri Pirko May 10, 2024, 11:09 a.m. UTC | #3
Fri, May 10, 2024 at 09:24:48AM CEST, michal.swiatkowski@linux.intel.com wrote:
>On Thu, May 09, 2024 at 01:18:29PM +0200, Jiri Pirko wrote:
>> Tue, May 07, 2024 at 01:45:01PM CEST, michal.swiatkowski@linux.intel.com wrote:
>> >Hi,
>> >
>> >Currently ice driver does not allow creating more than one networking
>> >device per physical function. The only way to have more hardware backed
>> >netdev is to use SR-IOV.
>> >
>> >Following patchset adds support for devlink port API. For each new
>> >pcisf type port, driver allocates new VSI, configures all resources
>> >needed, including dynamically MSIX vectors, program rules and registers
>> >new netdev.
>> >
>> >This series supports only one Tx/Rx queue pair per subfunction.
>> >
>> >Example commands:
>> >devlink port add pci/0000:31:00.1 flavour pcisf pfnum 1 sfnum 1000
>> >devlink port function set pci/0000:31:00.1/1 hw_addr 00:00:00:00:03:14
>> >devlink port function set pci/0000:31:00.1/1 state active
>> >devlink port function del pci/0000:31:00.1/1
>> >
>> >Make the port representor and eswitch code generic to support
>> >subfunction representor type.
>> >
>> >VSI configuration is slightly different between VF and SF. It needs to
>> >be reflected in the code.
>> >
>> >Most recent previous patchset (not containing port representor for SF
>> >support). [1]
>> >
>> >[1] https://lore.kernel.org/netdev/20240417142028.2171-1-michal.swiatkowski@linux.intel.com/
>> >
>> 
>> 
>> I don't understand howcome the patchset is v1, yet there are patches
>> that came through multiple iterations alread. Changelog is missing
>> completely :/
>> 
>
>What is wrong here? There is a link to previous patchset with whole
>changlog and links to previous ones. I didn't add changlog here as it is
>new patchset (partialy the same as from [1], because of that I added a
>link). I can add the changlog from [1] if you want, but for me it can be
>missleading.

It's always good to see what you changed if you send modified patches.
That's all.


>
>> 
>> >Michal Swiatkowski (7):
>> >  ice: treat subfunction VSI the same as PF VSI
>> >  ice: create port representor for SF
>> >  ice: don't set target VSI for subfunction
>> >  ice: check if SF is ready in ethtool ops
>> >  ice: netdevice ops for SF representor
>> >  ice: support subfunction devlink Tx topology
>> >  ice: basic support for VLAN in subfunctions
>> >
>> >Piotr Raczynski (7):
>> >  ice: add new VSI type for subfunctions
>> >  ice: export ice ndo_ops functions
>> >  ice: add basic devlink subfunctions support
>> >  ice: allocate devlink for subfunction
>> >  ice: base subfunction aux driver
>> >  ice: implement netdev for subfunction
>> >  ice: allow to activate and deactivate subfunction
>> >
>> > drivers/net/ethernet/intel/ice/Makefile       |   2 +
>> > .../net/ethernet/intel/ice/devlink/devlink.c  |  48 ++
>> > .../net/ethernet/intel/ice/devlink/devlink.h  |   1 +
>> > .../ethernet/intel/ice/devlink/devlink_port.c | 516 ++++++++++++++++++
>> > .../ethernet/intel/ice/devlink/devlink_port.h |  43 ++
>> > drivers/net/ethernet/intel/ice/ice.h          |  19 +-
>> > drivers/net/ethernet/intel/ice/ice_base.c     |   5 +-
>> > drivers/net/ethernet/intel/ice/ice_dcb_lib.c  |   1 +
>> > drivers/net/ethernet/intel/ice/ice_eswitch.c  |  85 ++-
>> > drivers/net/ethernet/intel/ice/ice_eswitch.h  |  22 +-
>> > drivers/net/ethernet/intel/ice/ice_ethtool.c  |   7 +-
>> > drivers/net/ethernet/intel/ice/ice_lib.c      |  52 +-
>> > drivers/net/ethernet/intel/ice/ice_lib.h      |   3 +
>> > drivers/net/ethernet/intel/ice/ice_main.c     |  66 ++-
>> > drivers/net/ethernet/intel/ice/ice_repr.c     | 195 +++++--
>> > drivers/net/ethernet/intel/ice/ice_repr.h     |  22 +-
>> > drivers/net/ethernet/intel/ice/ice_sf_eth.c   | 329 +++++++++++
>> > drivers/net/ethernet/intel/ice/ice_sf_eth.h   |  33 ++
>> > .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.c  |  21 +
>> > .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.h  |  13 +
>> > drivers/net/ethernet/intel/ice/ice_sriov.c    |   4 +-
>> > drivers/net/ethernet/intel/ice/ice_txrx.c     |   2 +-
>> > drivers/net/ethernet/intel/ice/ice_type.h     |   1 +
>> > drivers/net/ethernet/intel/ice/ice_vf_lib.c   |   4 +-
>> > .../net/ethernet/intel/ice/ice_vsi_vlan_ops.c |   4 +
>> > drivers/net/ethernet/intel/ice/ice_xsk.c      |   2 +-
>> > 26 files changed, 1362 insertions(+), 138 deletions(-)
>> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.c
>> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.h
>> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.c
>> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.h
>> >
>> >-- 
>> >2.42.0
>> >
>> >
Michal Swiatkowski May 10, 2024, 12:26 p.m. UTC | #4
On Fri, May 10, 2024 at 01:09:20PM +0200, Jiri Pirko wrote:
> Fri, May 10, 2024 at 09:24:48AM CEST, michal.swiatkowski@linux.intel.com wrote:
> >On Thu, May 09, 2024 at 01:18:29PM +0200, Jiri Pirko wrote:
> >> Tue, May 07, 2024 at 01:45:01PM CEST, michal.swiatkowski@linux.intel.com wrote:
> >> >Hi,
> >> >
> >> >Currently ice driver does not allow creating more than one networking
> >> >device per physical function. The only way to have more hardware backed
> >> >netdev is to use SR-IOV.
> >> >
> >> >Following patchset adds support for devlink port API. For each new
> >> >pcisf type port, driver allocates new VSI, configures all resources
> >> >needed, including dynamically MSIX vectors, program rules and registers
> >> >new netdev.
> >> >
> >> >This series supports only one Tx/Rx queue pair per subfunction.
> >> >
> >> >Example commands:
> >> >devlink port add pci/0000:31:00.1 flavour pcisf pfnum 1 sfnum 1000
> >> >devlink port function set pci/0000:31:00.1/1 hw_addr 00:00:00:00:03:14
> >> >devlink port function set pci/0000:31:00.1/1 state active
> >> >devlink port function del pci/0000:31:00.1/1
> >> >
> >> >Make the port representor and eswitch code generic to support
> >> >subfunction representor type.
> >> >
> >> >VSI configuration is slightly different between VF and SF. It needs to
> >> >be reflected in the code.
> >> >
> >> >Most recent previous patchset (not containing port representor for SF
> >> >support). [1]
> >> >
> >> >[1] https://lore.kernel.org/netdev/20240417142028.2171-1-michal.swiatkowski@linux.intel.com/
> >> >
> >> 
> >> 
> >> I don't understand howcome the patchset is v1, yet there are patches
> >> that came through multiple iterations alread. Changelog is missing
> >> completely :/
> >> 
> >
> >What is wrong here? There is a link to previous patchset with whole
> >changlog and links to previous ones. I didn't add changlog here as it is
> >new patchset (partialy the same as from [1], because of that I added a
> >link). I can add the changlog from [1] if you want, but for me it can be
> >missleading.
> 
> It's always good to see what you changed if you send modified patches.
> That's all.
> 

I will paste previous changelog in next version so.

> 
> >
> >> 
> >> >Michal Swiatkowski (7):
> >> >  ice: treat subfunction VSI the same as PF VSI
> >> >  ice: create port representor for SF
> >> >  ice: don't set target VSI for subfunction
> >> >  ice: check if SF is ready in ethtool ops
> >> >  ice: netdevice ops for SF representor
> >> >  ice: support subfunction devlink Tx topology
> >> >  ice: basic support for VLAN in subfunctions
> >> >
> >> >Piotr Raczynski (7):
> >> >  ice: add new VSI type for subfunctions
> >> >  ice: export ice ndo_ops functions
> >> >  ice: add basic devlink subfunctions support
> >> >  ice: allocate devlink for subfunction
> >> >  ice: base subfunction aux driver
> >> >  ice: implement netdev for subfunction
> >> >  ice: allow to activate and deactivate subfunction
> >> >
> >> > drivers/net/ethernet/intel/ice/Makefile       |   2 +
> >> > .../net/ethernet/intel/ice/devlink/devlink.c  |  48 ++
> >> > .../net/ethernet/intel/ice/devlink/devlink.h  |   1 +
> >> > .../ethernet/intel/ice/devlink/devlink_port.c | 516 ++++++++++++++++++
> >> > .../ethernet/intel/ice/devlink/devlink_port.h |  43 ++
> >> > drivers/net/ethernet/intel/ice/ice.h          |  19 +-
> >> > drivers/net/ethernet/intel/ice/ice_base.c     |   5 +-
> >> > drivers/net/ethernet/intel/ice/ice_dcb_lib.c  |   1 +
> >> > drivers/net/ethernet/intel/ice/ice_eswitch.c  |  85 ++-
> >> > drivers/net/ethernet/intel/ice/ice_eswitch.h  |  22 +-
> >> > drivers/net/ethernet/intel/ice/ice_ethtool.c  |   7 +-
> >> > drivers/net/ethernet/intel/ice/ice_lib.c      |  52 +-
> >> > drivers/net/ethernet/intel/ice/ice_lib.h      |   3 +
> >> > drivers/net/ethernet/intel/ice/ice_main.c     |  66 ++-
> >> > drivers/net/ethernet/intel/ice/ice_repr.c     | 195 +++++--
> >> > drivers/net/ethernet/intel/ice/ice_repr.h     |  22 +-
> >> > drivers/net/ethernet/intel/ice/ice_sf_eth.c   | 329 +++++++++++
> >> > drivers/net/ethernet/intel/ice/ice_sf_eth.h   |  33 ++
> >> > .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.c  |  21 +
> >> > .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.h  |  13 +
> >> > drivers/net/ethernet/intel/ice/ice_sriov.c    |   4 +-
> >> > drivers/net/ethernet/intel/ice/ice_txrx.c     |   2 +-
> >> > drivers/net/ethernet/intel/ice/ice_type.h     |   1 +
> >> > drivers/net/ethernet/intel/ice/ice_vf_lib.c   |   4 +-
> >> > .../net/ethernet/intel/ice/ice_vsi_vlan_ops.c |   4 +
> >> > drivers/net/ethernet/intel/ice/ice_xsk.c      |   2 +-
> >> > 26 files changed, 1362 insertions(+), 138 deletions(-)
> >> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.c
> >> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.h
> >> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.c
> >> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.h
> >> >
> >> >-- 
> >> >2.42.0
> >> >
> >> >