[PATCH v8 0/2] Add support for hashing algorithms in TI DTHE V2
From: T Pratham <t-pratham@ti.com>
Date: 2026-09-10 10:51:16
Also in:
lkml
DTHEv2 is a new cryptography engine introduced in TI AM62L SoC. The features of DTHEv2 were detailed in [1]. Additional hardware details available in SoC TRM [2]. DTHEv2 includes, among its various sub-components, a hashing engine which is compliant with various IETF and NIST standards, including FIPS 180-3 and FIPS PUB 198. This patch series adds support for the hashing algorithms SHA224/256/384/512 as well as their HMAC counnterparts for the hashing engine of Texas Instruments DTHE V2 crypto driver. The driver is tested using full kernel crypto selftests (CRYPTO_SELFTESTS_FULL) which all pass successfully [3]. Some of the pre-existing errors caught by Sashiko are fixed in a separate series [4]. This patch series depends on [4]. Signed-off-by: T Pratham <t-pratham@ti.com> --- [1]: [PATCH v7 0/2] Add support for Texas Instruments DTHEv2 Crypto Engine Link: https://lore.kernel.org/all/20250820092710.3510788-1-t-pratham@ti.com/ (local) [2]: Section 14.6.3 (DMA Control Registers -> DMASS_DTHE) Link: https://www.ti.com/lit/ug/sprujb4/sprujb4.pdf [3]: DTHEv2 kernel self-tests logs Link: https://gist.github.com/Pratham-T/fd15b8e0ee815bcb420a60d451a0cf18 [4]: [PATCH v3 0/12] Fix several issues in DTHEv2 driver Link: https://lore.kernel.org/all/20260910104202.1537226-1-t-pratham@ti.com/ (local) Changelog: v8: - Minor fixes based on Sashiko comments on [4] and changes in [4] v7: - Minor fixes based on Sashiko comments on [4] v6: - Dropped MD5 and HMAC(MD5) - Fixed errors pointed by Sashiko v5: - Removed CRYPTO_AHASH_ALG_FINAL_NON_ZERO and FINUP_MAX. Implemented the same mechanism in the driver itself by witholding one block in the req ctx. v4: - Export initial state when phash_available = 0 v3: - Check for error in registration individualy for hash and aes driver algos. - Fixed comment style in dthev2-common.c v2: - Completely revamped the driver to use the new CRYPTO_AHASH_BLOCK_ONLY framework for handling partial blocks and crypto_engine for queueing. - Added HMAC as well. Link to previous versions: v7: https://lore.kernel.org/all/20260827133542.619717-1-t-pratham@ti.com/ (local) v6: https://lore.kernel.org/all/20260827112653.530273-1-t-pratham@ti.com/ (local) v5: https://lore.kernel.org/all/20260807110501.975130-1-t-pratham@ti.com/ (local) v4: https://lore.kernel.org/all/20260526094355.555712-1-t-pratham@ti.com/ (local) v3: https://lore.kernel.org/all/20260226131103.3560884-1-t-pratham@ti.com/ (local) v2: https://lore.kernel.org/all/20260121132408.743777-1-t-pratham@ti.com/ (local) v1: https://lore.kernel.org/all/20250218104943.2304730-1-t-pratham@ti.com/ (local) --- T Pratham (2): crypto: ti - Add support for SHA224/256/384/512 in DTHEv2 driver crypto: ti - Add support for HMAC in DTHEv2 driver drivers/crypto/ti/Kconfig | 3 + drivers/crypto/ti/Makefile | 2 +- drivers/crypto/ti/dthev2-aes.c | 10 +- drivers/crypto/ti/dthev2-common.c | 43 +- drivers/crypto/ti/dthev2-common.h | 68 +- drivers/crypto/ti/dthev2-hash.c | 1047 +++++++++++++++++++++++++++++ 6 files changed, 1152 insertions(+), 21 deletions(-) create mode 100644 drivers/crypto/ti/dthev2-hash.c -- 2.34.1