mbox series

[v2,0/4] crypto: qat - enable configuration for 4xxx

Message ID 20220627083652.880303-1-giovanni.cabiddu@intel.com
Headers show
Series crypto: qat - enable configuration for 4xxx | expand

Message

Giovanni Cabiddu June 27, 2022, 8:36 a.m. UTC
qat_4xxx devices can be configured to allow either crypto or compression
operations. By default, devices are configured statically according
to following rule:
- odd numbered devices assigned to compression services
- even numbered devices assigned to crypto services

This set exposes two attributes in sysfs that allow to report and change
the state and the configuration of a QAT 4xxx device.
The first, /sys/bus/pci/devices/<BDF>/qat/state, allows to bring a
device down in order to change the configuration, and bring it up again.
The second, /sys/bus/pci/devices/<BDF>/qat/cfg_services, allows to
inspect the current configuration of a device (i.e. crypto or
compression) and change it.

    # cat /sys/bus/pci/devices/<BDF>/qat/state
    up
    # cat /sys/bus/pci/devices/<BDF>/qat/cfg_services
    sym;asym
    # echo down > /sys/bus/pci/devices/<BDF>/qat/state
    # echo dc > /sys/bus/pci/devices/<BDF>/qat/cfg_services
    # echo up > /sys/bus/pci/devices/<BDF>/qat/state
    # cat /sys/bus/pci/devices/<BDF>/qat/state
    dc

Changes from v1:
 - Updated target kernel version in documentation (from 5.19 to 5.20).
 - Fixed commit message in patch #1 and updated documentation in patch
   #4 after review from Vladis Dronov.

Giovanni Cabiddu (4):
  crypto: qat - expose device state through sysfs for 4xxx
  crypto: qat - change behaviour of adf_cfg_add_key_value_param()
  crypto: qat - relocate and rename adf_sriov_prepare_restart()
  crypto: qat - expose device config through sysfs for 4xxx

 Documentation/ABI/testing/sysfs-driver-qat    |  61 ++++++
 .../crypto/qat/qat_4xxx/adf_4xxx_hw_data.c    |   1 +
 .../crypto/qat/qat_4xxx/adf_4xxx_hw_data.h    |   1 +
 drivers/crypto/qat/qat_4xxx/adf_drv.c         |   6 +-
 drivers/crypto/qat/qat_common/Makefile        |   1 +
 .../crypto/qat/qat_common/adf_accel_devices.h |   1 +
 drivers/crypto/qat/qat_common/adf_cfg.c       |  41 +++-
 .../crypto/qat/qat_common/adf_common_drv.h    |   3 +
 drivers/crypto/qat/qat_common/adf_init.c      |  26 +++
 drivers/crypto/qat/qat_common/adf_sriov.c     |  28 +--
 drivers/crypto/qat/qat_common/adf_sysfs.c     | 191 ++++++++++++++++++
 11 files changed, 331 insertions(+), 29 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-driver-qat
 create mode 100644 drivers/crypto/qat/qat_common/adf_sysfs.c

Comments

Vladis Dronov June 28, 2022, 12:15 p.m. UTC | #1
Hi,

On Mon, Jun 27, 2022 at 10:37 AM Giovanni Cabiddu
<giovanni.cabiddu@intel.com> wrote:
>
> qat_4xxx devices can be configured to allow either crypto or compression
> operations. By default, devices are configured statically according
> to following rule:
> - odd numbered devices assigned to compression services
> - even numbered devices assigned to crypto services
>
> This set exposes two attributes in sysfs that allow to report and change
> the state and the configuration of a QAT 4xxx device.
> The first, /sys/bus/pci/devices/<BDF>/qat/state, allows to bring a
> device down in order to change the configuration, and bring it up again.
> The second, /sys/bus/pci/devices/<BDF>/qat/cfg_services, allows to
> inspect the current configuration of a device (i.e. crypto or
> compression) and change it.
>
>     # cat /sys/bus/pci/devices/<BDF>/qat/state
>     up
>     # cat /sys/bus/pci/devices/<BDF>/qat/cfg_services
>     sym;asym
>     # echo down > /sys/bus/pci/devices/<BDF>/qat/state
>     # echo dc > /sys/bus/pci/devices/<BDF>/qat/cfg_services
>     # echo up > /sys/bus/pci/devices/<BDF>/qat/state
>     # cat /sys/bus/pci/devices/<BDF>/qat/state
>     dc
>
> Changes from v1:
>  - Updated target kernel version in documentation (from 5.19 to 5.20).
>  - Fixed commit message in patch #1 and updated documentation in patch
>    #4 after review from Vladis Dronov.
>
> Giovanni Cabiddu (4):
>   crypto: qat - expose device state through sysfs for 4xxx
>   crypto: qat - change behaviour of adf_cfg_add_key_value_param()
>   crypto: qat - relocate and rename adf_sriov_prepare_restart()
>   crypto: qat - expose device config through sysfs for 4xxx

The patchset looks good to me. Please feel free to use:

Reviewed-by: Vladis Dronov <vdronov@redhat.com>

Best regards,
Vladis Dronov | Red Hat, Inc. | The Core Kernel | Senior Software Engineer
Herbert Xu July 8, 2022, 7:58 a.m. UTC | #2
On Mon, Jun 27, 2022 at 09:36:48AM +0100, Giovanni Cabiddu wrote:
> qat_4xxx devices can be configured to allow either crypto or compression
> operations. By default, devices are configured statically according
> to following rule:
> - odd numbered devices assigned to compression services
> - even numbered devices assigned to crypto services
> 
> This set exposes two attributes in sysfs that allow to report and change
> the state and the configuration of a QAT 4xxx device.
> The first, /sys/bus/pci/devices/<BDF>/qat/state, allows to bring a
> device down in order to change the configuration, and bring it up again.
> The second, /sys/bus/pci/devices/<BDF>/qat/cfg_services, allows to
> inspect the current configuration of a device (i.e. crypto or
> compression) and change it.
> 
>     # cat /sys/bus/pci/devices/<BDF>/qat/state
>     up
>     # cat /sys/bus/pci/devices/<BDF>/qat/cfg_services
>     sym;asym
>     # echo down > /sys/bus/pci/devices/<BDF>/qat/state
>     # echo dc > /sys/bus/pci/devices/<BDF>/qat/cfg_services
>     # echo up > /sys/bus/pci/devices/<BDF>/qat/state
>     # cat /sys/bus/pci/devices/<BDF>/qat/state
>     dc
> 
> Changes from v1:
>  - Updated target kernel version in documentation (from 5.19 to 5.20).
>  - Fixed commit message in patch #1 and updated documentation in patch
>    #4 after review from Vladis Dronov.
> 
> Giovanni Cabiddu (4):
>   crypto: qat - expose device state through sysfs for 4xxx
>   crypto: qat - change behaviour of adf_cfg_add_key_value_param()
>   crypto: qat - relocate and rename adf_sriov_prepare_restart()
>   crypto: qat - expose device config through sysfs for 4xxx
> 
>  Documentation/ABI/testing/sysfs-driver-qat    |  61 ++++++
>  .../crypto/qat/qat_4xxx/adf_4xxx_hw_data.c    |   1 +
>  .../crypto/qat/qat_4xxx/adf_4xxx_hw_data.h    |   1 +
>  drivers/crypto/qat/qat_4xxx/adf_drv.c         |   6 +-
>  drivers/crypto/qat/qat_common/Makefile        |   1 +
>  .../crypto/qat/qat_common/adf_accel_devices.h |   1 +
>  drivers/crypto/qat/qat_common/adf_cfg.c       |  41 +++-
>  .../crypto/qat/qat_common/adf_common_drv.h    |   3 +
>  drivers/crypto/qat/qat_common/adf_init.c      |  26 +++
>  drivers/crypto/qat/qat_common/adf_sriov.c     |  28 +--
>  drivers/crypto/qat/qat_common/adf_sysfs.c     | 191 ++++++++++++++++++
>  11 files changed, 331 insertions(+), 29 deletions(-)
>  create mode 100644 Documentation/ABI/testing/sysfs-driver-qat
>  create mode 100644 drivers/crypto/qat/qat_common/adf_sysfs.c

All applied.  Thanks.