Commit 44a8c96e authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull crypto update from Herbert Xu:
 "API:
   - Allow hash drivers without fallbacks (e.g., hardware key)

  Algorithms:
   - Add hmac hardware key support (phmac) on s390
   - Re-enable sha384 in FIPS mode
   - Disable sha1 in FIPS mode
   - Convert zstd to acomp

  Drivers:
   - Lower priority of qat skcipher and aead
   - Convert aspeed to partial block API
   - Add iMX8QXP support in caam
   - Add rate limiting support for GEN6 devices in qat
   - Enable telemetry for GEN6 devices in qat
   - Implement full backlog mode for hisilicon/sec2"

* tag 'v6.17-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (116 commits)
  crypto: keembay - Use min() to simplify ocs_create_linked_list_from_sg()
  crypto: hisilicon/hpre - fix dma unmap sequence
  crypto: qat - make adf_dev_autoreset() static
  crypto: ccp - reduce stack usage in ccp_run_aes_gcm_cmd
  crypto: qat - refactor ring-related debug functions
  crypto: qat - fix seq_file position update in adf_ring_next()
  crypto: qat - fix DMA direction for compression on GEN2 devices
  crypto: jitter - replace ARRAY_SIZE definition with header include
  crypto: engine - remove {prepare,unprepare}_crypt_hardware callbacks
  crypto: engine - remove request batching support
  crypto: qat - flush misc workqueue during device shutdown
  crypto: qat - enable rate limiting feature for GEN6 devices
  crypto: qat - add compression slice count for rate limiting
  crypto: qat - add get_svc_slice_cnt() in device data structure
  crypto: qat - add adf_rl_get_num_svc_aes() in rate limiting
  crypto: qat - relocate service related functions
  crypto: qat - consolidate service enums
  crypto: qat - add decompression service for rate limiting
  crypto: qat - validate service in rate limiting sysfs api
  crypto: hisilicon/sec2 - implement full backlog mode for sec
  ...
parents b4efd625 bf24d642
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ Contact: qat-linux@intel.com
Description:	(RO) Read returns power management information specific to the
		QAT device.

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/kernel/debug/qat_<device>_<BDF>/cnv_errors
Date:		January 2024
+7 −3
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ Description: (RW) Enables/disables the reporting of telemetry metrics.

		  echo 0 > /sys/kernel/debug/qat_4xxx_0000:6b:00.0/telemetry/control

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/kernel/debug/qat_<device>_<BDF>/telemetry/device_data
Date:		March 2024
@@ -67,6 +67,10 @@ Description: (RO) Reports device telemetry counters.
		exec_xlt<N>		execution count of Translator slice N
		util_dcpr<N>		utilization of Decompression slice N [%]
		exec_dcpr<N>		execution count of Decompression slice N
		util_cnv<N>		utilization of Compression and verify slice N [%]
		exec_cnv<N>		execution count of Compression and verify slice N
		util_dcprz<N>		utilization of Decompression slice N [%]
		exec_dcprz<N>		execution count of Decompression slice N
		util_pke<N>		utilization of PKE N [%]
		exec_pke<N>		execution count of PKE N
		util_ucs<N>		utilization of UCS slice N [%]
@@ -100,7 +104,7 @@ Description: (RO) Reports device telemetry counters.
		If a device lacks of a specific accelerator, the corresponding
		attribute is not reported.

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/kernel/debug/qat_<device>_<BDF>/telemetry/rp_<A/B/C/D>_data
Date:		March 2024
@@ -225,4 +229,4 @@ Description: (RW) Selects up to 4 Ring Pairs (RP) to monitor, one per file,
		``rp2srv`` from sysfs.
		See Documentation/ABI/testing/sysfs-driver-qat for details.

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.
+28 −24
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@ Description: (RW) Reports the current state of the QAT device. Write to
		It is possible to transition the device from up to down only
		if the device is up and vice versa.

		This attribute is only available for qat_4xxx devices.
		This attribute is available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat/cfg_services
Date:		June 2022
@@ -23,24 +23,28 @@ Contact: qat-linux@intel.com
Description:	(RW) Reports the current configuration of the QAT device.
		Write to the file to change the configured services.

		The values are:

		* sym;asym: the device is configured for running crypto
		  services
		* asym;sym: identical to sym;asym
		* dc: the device is configured for running compression services
		* dcc: identical to dc but enables the dc chaining feature,
		  hash then compression. If this is not required chose dc
		* sym: the device is configured for running symmetric crypto
		  services
		* asym: the device is configured for running asymmetric crypto
		  services
		* asym;dc: the device is configured for running asymmetric
		  crypto services and compression services
		* dc;asym: identical to asym;dc
		* sym;dc: the device is configured for running symmetric crypto
		  services and compression services
		* dc;sym: identical to sym;dc
		One or more services can be enabled per device.
		Certain configurations are restricted to specific device types;
		where applicable this is explicitly indicated, for example
		(qat_6xxx) denotes applicability exclusively to that device series.

		The available services include:

		* sym: Configures the device for symmetric cryptographic operations.
		* asym: Configures the device for asymmetric cryptographic operations.
		* dc: Configures the device for compression and decompression
		  operations.
		* dcc: Similar to dc, but with the additional dc chaining feature
		  enabled, cipher then compress (qat_6xxx), hash then compression.
		  If this is not required choose dc.
		* decomp: Configures the device for decompression operations (qat_6xxx).

		Service combinations are permitted for all services except dcc.
		On QAT GEN4 devices (qat_4xxx driver) a maximum of two services can be
		combined and on QAT GEN6 devices (qat_6xxx driver ) a maximum of three
		services can be combined.
		The order of services is not significant. For instance, sym;asym is
		functionally equivalent to asym;sym.

		It is possible to set the configuration only if the device
		is in the `down` state (see /sys/bus/pci/devices/<BDF>/qat/state)
@@ -59,7 +63,7 @@ Description: (RW) Reports the current configuration of the QAT device.
			# cat /sys/bus/pci/devices/<BDF>/qat/cfg_services
			dc

		This attribute is only available for qat_4xxx devices.
		This attribute is available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat/pm_idle_enabled
Date:		June 2023
@@ -94,7 +98,7 @@ Description: (RW) This configuration option provides a way to force the device i
			# cat /sys/bus/pci/devices/<BDF>/qat/pm_idle_enabled
			0

		This attribute is only available for qat_4xxx devices.
		This attribute is available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat/rp2srv
Date:		January 2024
@@ -126,7 +130,7 @@ Description:
			# cat /sys/bus/pci/devices/<BDF>/qat/rp2srv
			sym

		This attribute is only available for qat_4xxx devices.
		This attribute is available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat/num_rps
Date:		January 2024
@@ -140,7 +144,7 @@ Description:
			# cat /sys/bus/pci/devices/<BDF>/qat/num_rps
			64

		This attribute is only available for qat_4xxx devices.
		This attribute is available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat/auto_reset
Date:		May 2024
@@ -160,4 +164,4 @@ Description: (RW) Reports the current state of the autoreset feature
		* 0/Nn/off: auto reset disabled. If the device encounters an
		  unrecoverable error, it will not be reset.

		This attribute is only available for qat_4xxx devices.
		This attribute is available for qat_4xxx and qat_6xxx devices.
+7 −7
Original line number Diff line number Diff line
@@ -31,7 +31,7 @@ Description:
		* rm_all: Removes all the configured SLAs.
			* Inputs: None

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat_rl/rp
Date:		January 2024
@@ -68,7 +68,7 @@ Description:
			## Write
			# echo 0x5 > /sys/bus/pci/devices/<BDF>/qat_rl/rp

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat_rl/id
Date:		January 2024
@@ -101,7 +101,7 @@ Description:
			# cat /sys/bus/pci/devices/<BDF>/qat_rl/rp
			0x5  ## ring pair ID 0 and ring pair ID 2

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat_rl/cir
Date:		January 2024
@@ -135,7 +135,7 @@ Description:
			# cat /sys/bus/pci/devices/<BDF>/qat_rl/cir
			500

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat_rl/pir
Date:		January 2024
@@ -169,7 +169,7 @@ Description:
			# cat /sys/bus/pci/devices/<BDF>/qat_rl/pir
			750

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat_rl/srv
Date:		January 2024
@@ -202,7 +202,7 @@ Description:
			# cat /sys/bus/pci/devices/<BDF>/qat_rl/srv
			dc

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.

What:		/sys/bus/pci/devices/<BDF>/qat_rl/cap_rem
Date:		January 2024
@@ -223,4 +223,4 @@ Description:
			# cat /sys/bus/pci/devices/<BDF>/qat_rl/cap_rem
			0

		This attribute is only available for qat_4xxx devices.
		This attribute is only available for qat_4xxx and qat_6xxx devices.
+0 −6
Original line number Diff line number Diff line
@@ -36,12 +36,6 @@ engine using ``crypto_engine_stop()`` and destroy the engine with
Before transferring any request, you have to fill the context enginectx by
providing functions for the following:

* ``prepare_crypt_hardware``: Called once before any prepare functions are
  called.

* ``unprepare_crypt_hardware``: Called once after all unprepare functions have
  been called.

* ``prepare_cipher_request``/``prepare_hash_request``: Called before each
  corresponding request is performed. If some processing or other preparatory
  work is required, do it here.
Loading