mbox series

[v4,0/8] common/sfc_efx: prepare to introduce vDPA driver

Message ID 20210316085832.942481-1-andrew.rybchenko@oktetlabs.ru (mailing list archive)
Headers show
Series common/sfc_efx: prepare to introduce vDPA driver | expand

Message

Andrew Rybchenko March 16, 2021, 8:58 a.m. UTC
Update base driver to provide functionality required by vDPA driver.

Factor out helper functions to be shared by net and vDPA drivers.

v4:
 - fix Copyright year

v3:
 - one more attempt to fix windows build breakage

v2:
 - fix windows build breakage - do not build common/sfc_efx in the case
   of windows
 - remove undefined efx_virtio_* functions from version.map (since
   EFSYS_OPT_VIRTIO is disabled)

Vijay Kumar Srivastava (6):
  common/sfc_efx/base: add virtio build dependency
  common/sfc_efx/base: add support to get virtio features
  common/sfc_efx/base: add support to verify virtio features
  common/sfc_efx: add support to get the device class
  net/sfc: skip driver probe for incompatible device class
  drivers: add common driver API to get efx family

Vijay Srivastava (2):
  common/sfc_efx/base: add base virtio support for vDPA
  common/sfc_efx/base: add API to get VirtQ doorbell offset

 doc/guides/nics/sfc_efx.rst                |   8 +
 drivers/common/meson.build                 |   2 +-
 drivers/common/sfc_efx/base/efx.h          | 142 ++++++++
 drivers/common/sfc_efx/base/efx_check.h    |   9 +
 drivers/common/sfc_efx/base/efx_impl.h     |  42 +++
 drivers/common/sfc_efx/base/efx_virtio.c   | 340 ++++++++++++++++++
 drivers/common/sfc_efx/base/meson.build    |   2 +
 drivers/common/sfc_efx/base/rhead_impl.h   |  37 ++
 drivers/common/sfc_efx/base/rhead_virtio.c | 379 +++++++++++++++++++++
 drivers/common/sfc_efx/efsys.h             |   2 +
 drivers/common/sfc_efx/meson.build         |   6 +
 drivers/common/sfc_efx/sfc_efx.c           | 105 ++++++
 drivers/common/sfc_efx/sfc_efx.h           |  44 +++
 drivers/common/sfc_efx/version.map         |   3 +
 drivers/meson.build                        |   1 +
 drivers/net/sfc/sfc.c                      |  61 +---
 drivers/net/sfc/sfc.h                      |   1 +
 drivers/net/sfc/sfc_ethdev.c               |   7 +
 drivers/net/sfc/sfc_kvargs.c               |   1 +
 19 files changed, 1134 insertions(+), 58 deletions(-)
 create mode 100644 drivers/common/sfc_efx/base/efx_virtio.c
 create mode 100644 drivers/common/sfc_efx/base/rhead_virtio.c
 create mode 100644 drivers/common/sfc_efx/sfc_efx.h

Comments

Ferruh Yigit March 16, 2021, 11:26 a.m. UTC | #1
On 3/16/2021 8:58 AM, Andrew Rybchenko wrote:
> Update base driver to provide functionality required by vDPA driver.
> 
> Factor out helper functions to be shared by net and vDPA drivers.
> 
> v4:
>   - fix Copyright year
> 
> v3:
>   - one more attempt to fix windows build breakage
> 
> v2:
>   - fix windows build breakage - do not build common/sfc_efx in the case
>     of windows
>   - remove undefined efx_virtio_* functions from version.map (since
>     EFSYS_OPT_VIRTIO is disabled)
> 
> Vijay Kumar Srivastava (6):
>    common/sfc_efx/base: add virtio build dependency
>    common/sfc_efx/base: add support to get virtio features
>    common/sfc_efx/base: add support to verify virtio features
>    common/sfc_efx: add support to get the device class
>    net/sfc: skip driver probe for incompatible device class
>    drivers: add common driver API to get efx family
> 
> Vijay Srivastava (2):
>    common/sfc_efx/base: add base virtio support for vDPA
>    common/sfc_efx/base: add API to get VirtQ doorbell offset
> 

The driver adds vDPA support, I believe it worth mentioning in the driver 
documentation and in the release notes, can you please send a new version with 
documentation updates?
Andrew Rybchenko March 16, 2021, 11:30 a.m. UTC | #2
On 3/16/21 2:26 PM, Ferruh Yigit wrote:
> On 3/16/2021 8:58 AM, Andrew Rybchenko wrote:
>> Update base driver to provide functionality required by vDPA driver.
>>
>> Factor out helper functions to be shared by net and vDPA drivers.
>>
>> v4:
>>   - fix Copyright year
>>
>> v3:
>>   - one more attempt to fix windows build breakage
>>
>> v2:
>>   - fix windows build breakage - do not build common/sfc_efx in the case
>>     of windows
>>   - remove undefined efx_virtio_* functions from version.map (since
>>     EFSYS_OPT_VIRTIO is disabled)
>>
>> Vijay Kumar Srivastava (6):
>>    common/sfc_efx/base: add virtio build dependency
>>    common/sfc_efx/base: add support to get virtio features
>>    common/sfc_efx/base: add support to verify virtio features
>>    common/sfc_efx: add support to get the device class
>>    net/sfc: skip driver probe for incompatible device class
>>    drivers: add common driver API to get efx family
>>
>> Vijay Srivastava (2):
>>    common/sfc_efx/base: add base virtio support for vDPA
>>    common/sfc_efx/base: add API to get VirtQ doorbell offset
>>
>
> The driver adds vDPA support, I believe it worth mentioning in the
> driver documentation and in the release notes, can you please send a
> new version with documentation updates?

No, no. It is just preparations to introduce the vDPA driver.
vDPA drier will be added in a subsequent patches and I'll
ensure that it is mentioned in release notes etc.
Ferruh Yigit March 16, 2021, 11:32 a.m. UTC | #3
On 3/16/2021 11:30 AM, Andrew Rybchenko wrote:
> On 3/16/21 2:26 PM, Ferruh Yigit wrote:
>> On 3/16/2021 8:58 AM, Andrew Rybchenko wrote:
>>> Update base driver to provide functionality required by vDPA driver.
>>>
>>> Factor out helper functions to be shared by net and vDPA drivers.
>>>
>>> v4:
>>>    - fix Copyright year
>>>
>>> v3:
>>>    - one more attempt to fix windows build breakage
>>>
>>> v2:
>>>    - fix windows build breakage - do not build common/sfc_efx in the case
>>>      of windows
>>>    - remove undefined efx_virtio_* functions from version.map (since
>>>      EFSYS_OPT_VIRTIO is disabled)
>>>
>>> Vijay Kumar Srivastava (6):
>>>     common/sfc_efx/base: add virtio build dependency
>>>     common/sfc_efx/base: add support to get virtio features
>>>     common/sfc_efx/base: add support to verify virtio features
>>>     common/sfc_efx: add support to get the device class
>>>     net/sfc: skip driver probe for incompatible device class
>>>     drivers: add common driver API to get efx family
>>>
>>> Vijay Srivastava (2):
>>>     common/sfc_efx/base: add base virtio support for vDPA
>>>     common/sfc_efx/base: add API to get VirtQ doorbell offset
>>>
>>
>> The driver adds vDPA support, I believe it worth mentioning in the
>> driver documentation and in the release notes, can you please send a
>> new version with documentation updates?
> 
> No, no. It is just preparations to introduce the vDPA driver.
> vDPA drier will be added in a subsequent patches and I'll
> ensure that it is mentioned in release notes etc.
> 

Got it, that answers a few of unused functions too.. Please be sure to document.
Ferruh Yigit March 16, 2021, 11:34 a.m. UTC | #4
On 3/16/2021 11:32 AM, Ferruh Yigit wrote:
> On 3/16/2021 11:30 AM, Andrew Rybchenko wrote:
>> On 3/16/21 2:26 PM, Ferruh Yigit wrote:
>>> On 3/16/2021 8:58 AM, Andrew Rybchenko wrote:
>>>> Update base driver to provide functionality required by vDPA driver.
>>>>
>>>> Factor out helper functions to be shared by net and vDPA drivers.
>>>>
>>>> v4:
>>>>    - fix Copyright year
>>>>
>>>> v3:
>>>>    - one more attempt to fix windows build breakage
>>>>
>>>> v2:
>>>>    - fix windows build breakage - do not build common/sfc_efx in the case
>>>>      of windows
>>>>    - remove undefined efx_virtio_* functions from version.map (since
>>>>      EFSYS_OPT_VIRTIO is disabled)
>>>>
>>>> Vijay Kumar Srivastava (6):
>>>>     common/sfc_efx/base: add virtio build dependency
>>>>     common/sfc_efx/base: add support to get virtio features
>>>>     common/sfc_efx/base: add support to verify virtio features
>>>>     common/sfc_efx: add support to get the device class
>>>>     net/sfc: skip driver probe for incompatible device class
>>>>     drivers: add common driver API to get efx family
>>>>
>>>> Vijay Srivastava (2):
>>>>     common/sfc_efx/base: add base virtio support for vDPA
>>>>     common/sfc_efx/base: add API to get VirtQ doorbell offset
>>>>
>>>
>>> The driver adds vDPA support, I believe it worth mentioning in the
>>> driver documentation and in the release notes, can you please send a
>>> new version with documentation updates?
>>
>> No, no. It is just preparations to introduce the vDPA driver.
>> vDPA drier will be added in a subsequent patches and I'll
>> ensure that it is mentioned in release notes etc.
>>
> 
> Got it, that answers a few of unused functions too.. Please be sure to document.

I mean with coming patches, where appropriate.
Ferruh Yigit March 16, 2021, 11:46 a.m. UTC | #5
On 3/16/2021 8:58 AM, Andrew Rybchenko wrote:
> Update base driver to provide functionality required by vDPA driver.
> 
> Factor out helper functions to be shared by net and vDPA drivers.
> 
> v4:
>   - fix Copyright year
> 
> v3:
>   - one more attempt to fix windows build breakage
> 
> v2:
>   - fix windows build breakage - do not build common/sfc_efx in the case
>     of windows
>   - remove undefined efx_virtio_* functions from version.map (since
>     EFSYS_OPT_VIRTIO is disabled)
> 
> Vijay Kumar Srivastava (6):
>    common/sfc_efx/base: add virtio build dependency
>    common/sfc_efx/base: add support to get virtio features
>    common/sfc_efx/base: add support to verify virtio features
>    common/sfc_efx: add support to get the device class
>    net/sfc: skip driver probe for incompatible device class
>    drivers: add common driver API to get efx family
> 
> Vijay Srivastava (2):
>    common/sfc_efx/base: add base virtio support for vDPA
>    common/sfc_efx/base: add API to get VirtQ doorbell offset
> 

Series applied to dpdk-next-net/main, thanks.