| From: |
| Suman Kumar Chakraborty <suman.kumar.chakraborty-AT-intel.com> |
| To: |
| herbert-AT-gondor.apana.org.au |
| Subject: |
| [PATCH 00/11] crypto: qat - add support for QAT GEN6 devices |
| Date: |
| Wed, 30 Apr 2025 12:34:42 +0100 |
| Message-ID: |
| <20250430113453.1587497-1-suman.kumar.chakraborty@intel.com> |
| Cc: |
| linux-crypto-AT-vger.kernel.org, qat-linux-AT-intel.com |
| Archive-link: |
| Article |
This patchset adds support for QAT GEN6 devices, the successor to QAT GEN4
devices, by introducing a new driver, qat_6xxx.
This initial implementation lays the groundwork for future enhancements that
will be introduced in subsequent patchsets.
The first part of the set (patches #1 to #3) reworks and relocates some of the
existing features from the GEN4 device driver to the qat_common folder so that
the implementation can be shared between GEN4 and GEN6 device drivers.
The second part (patches #4 and #5) reworks the firmware loader to support the
`dual signing method` used by GEN6 devices.
The third part (patches #6 to #8) exposes symbols that are needed by the
qat_6xxx driver.
The fourth part (patches #9 and #10) updates the firmware APIs for GEN6
devices.
The last patch (#11) introduces the qat_6xxx driver.
George Abraham P (1):
crypto: qat - rename and relocate timer logic
Giovanni Cabiddu (1):
crypto: qat - export adf_get_service_mask()
Jack Xu (2):
crypto: qat - refactor FW signing algorithm
crypto: qat - add GEN6 firmware loader
Laurent M Coquerel (1):
crypto: qat - add qat_6xxx driver
Suman Kumar Chakraborty (6):
crypto: qat - refactor compression template logic
crypto: qat - use pr_fmt() in qat uclo.c
crypto: qat - expose configuration functions
crypto: qat - export adf_init_admin_pm()
crypto: qat - update firmware api
crypto: qat - add firmware headers for GEN6 devices
drivers/crypto/intel/qat/Kconfig | 12 +
drivers/crypto/intel/qat/Makefile | 1 +
.../intel/qat/qat_420xx/adf_420xx_hw_data.c | 7 +-
.../intel/qat/qat_4xxx/adf_4xxx_hw_data.c | 7 +-
drivers/crypto/intel/qat/qat_6xxx/Makefile | 3 +
.../intel/qat/qat_6xxx/adf_6xxx_hw_data.c | 843 ++++++++++++++++++
.../intel/qat/qat_6xxx/adf_6xxx_hw_data.h | 148 +++
drivers/crypto/intel/qat/qat_6xxx/adf_drv.c | 224 +++++
.../intel/qat/qat_c3xxx/adf_c3xxx_hw_data.c | 1 -
.../qat/qat_c3xxxvf/adf_c3xxxvf_hw_data.c | 1 -
.../intel/qat/qat_c62x/adf_c62x_hw_data.c | 1 -
.../intel/qat/qat_c62xvf/adf_c62xvf_hw_data.c | 1 -
drivers/crypto/intel/qat/qat_common/Makefile | 6 +-
.../intel/qat/qat_common/adf_accel_devices.h | 8 +-
.../crypto/intel/qat/qat_common/adf_admin.c | 1 +
.../intel/qat/qat_common/adf_cfg_common.h | 1 +
.../intel/qat/qat_common/adf_cfg_services.c | 3 +-
.../intel/qat/qat_common/adf_cfg_services.h | 1 +
.../qat_common/{adf_gen2_dc.c => adf_dc.c} | 50 +-
drivers/crypto/intel/qat/qat_common/adf_dc.h | 17 +
.../intel/qat/qat_common/adf_fw_config.h | 1 +
.../crypto/intel/qat/qat_common/adf_gen2_dc.h | 10 -
.../intel/qat/qat_common/adf_gen2_hw_data.c | 57 ++
.../intel/qat/qat_common/adf_gen2_hw_data.h | 1 +
.../intel/qat/qat_common/adf_gen4_config.c | 6 +-
.../intel/qat/qat_common/adf_gen4_config.h | 3 +
.../crypto/intel/qat/qat_common/adf_gen4_dc.c | 83 --
.../crypto/intel/qat/qat_common/adf_gen4_dc.h | 10 -
.../intel/qat/qat_common/adf_gen4_hw_data.c | 70 ++
.../intel/qat/qat_common/adf_gen4_hw_data.h | 2 +
.../crypto/intel/qat/qat_common/adf_gen6_pm.h | 28 +
.../intel/qat/qat_common/adf_gen6_shared.c | 49 +
.../intel/qat/qat_common/adf_gen6_shared.h | 15 +
.../{adf_gen4_timer.c => adf_timer.c} | 18 +-
.../{adf_gen4_timer.h => adf_timer.h} | 10 +-
.../intel/qat/qat_common/icp_qat_fw_comp.h | 23 +-
.../qat/qat_common/icp_qat_fw_loader_handle.h | 1 +
.../intel/qat/qat_common/icp_qat_hw_51_comp.h | 99 ++
.../qat/qat_common/icp_qat_hw_51_comp_defs.h | 318 +++++++
.../intel/qat/qat_common/icp_qat_uclo.h | 23 +
.../intel/qat/qat_common/qat_comp_algs.c | 5 +-
.../intel/qat/qat_common/qat_compression.c | 1 -
.../intel/qat/qat_common/qat_compression.h | 1 -
drivers/crypto/intel/qat/qat_common/qat_hal.c | 3 +
.../crypto/intel/qat/qat_common/qat_uclo.c | 437 ++++++---
.../qat/qat_dh895xcc/adf_dh895xcc_hw_data.c | 1 -
.../qat_dh895xccvf/adf_dh895xccvf_hw_data.c | 1 -
47 files changed, 2293 insertions(+), 319 deletions(-)
create mode 100644 drivers/crypto/intel/qat/qat_6xxx/Makefile
create mode 100644 drivers/crypto/intel/qat/qat_6xxx/adf_6xxx_hw_data.c
create mode 100644 drivers/crypto/intel/qat/qat_6xxx/adf_6xxx_hw_data.h
create mode 100644 drivers/crypto/intel/qat/qat_6xxx/adf_drv.c
rename drivers/crypto/intel/qat/qat_common/{adf_gen2_dc.c => adf_dc.c} (59%)
create mode 100644 drivers/crypto/intel/qat/qat_common/adf_dc.h
delete mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen2_dc.h
delete mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen4_dc.c
delete mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen4_dc.h
create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen6_pm.h
create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen6_shared.c
create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen6_shared.h
rename drivers/crypto/intel/qat/qat_common/{adf_gen4_timer.c => adf_timer.c} (78%)
rename drivers/crypto/intel/qat/qat_common/{adf_gen4_timer.h => adf_timer.h} (58%)
create mode 100644 drivers/crypto/intel/qat/qat_common/icp_qat_hw_51_comp.h
create mode 100644 drivers/crypto/intel/qat/qat_common/icp_qat_hw_51_comp_defs.h
base-commit: fef208fd85f67ab4a4552d2d141b3f811ab22f00
--
2.40.1