[PATCH 0/6] crypto: starfive: Add driver for cryptographic engine

From: Jia Jie Ho
Date: Wed Nov 30 2022 - 00:55:37 EST


This patch series adds kernel driver support for Starfive crypto engine.
The engine supports hardware acceleration for HMAC/hash functions,
AES block cipher operations and RSA. The first patch adds basic driver
for device probe and DMA init. The subsequent patches adds supported
crypto primitives to the driver which include hash functions, AES and
RSA. Patch 5 adds documentation to describe device tree bindings and the
last patch adds device node to VisionFive 2 dts.

The driver has been tested with crypto selftest and additional test.

This patch series depends on the following patches:
https://patchwork.kernel.org/project/linux-riscv/cover/20221118010627.70576-1-hal.feng@xxxxxxxxxxxxxxxx/
https://patchwork.kernel.org/project/linux-riscv/cover/20221118011714.70877-1-hal.feng@xxxxxxxxxxxxxxxx/

Jia Jie Ho (6):
crypto: starfive - Add StarFive crypto engine support
crypto: starfive - Add hash and HMAC support
crypto: starfive - Add AES skcipher and aead support
crypto: starfive - Add Public Key algo support
dt-bindings: crypto: Add bindings for Starfive crypto driver
riscv: dts: starfive: Add crypto and DMA node for VisionFive 2

.../bindings/crypto/starfive-crypto.yaml | 109 ++
MAINTAINERS | 7 +
.../jh7110-starfive-visionfive-v2.dts | 8 +
arch/riscv/boot/dts/starfive/jh7110.dtsi | 36 +
drivers/crypto/Kconfig | 1 +
drivers/crypto/Makefile | 1 +
drivers/crypto/starfive/Kconfig | 20 +
drivers/crypto/starfive/Makefile | 4 +
drivers/crypto/starfive/starfive-aes.c | 1723 +++++++++++++++++
drivers/crypto/starfive/starfive-cryp.c | 324 ++++
drivers/crypto/starfive/starfive-hash.c | 1152 +++++++++++
drivers/crypto/starfive/starfive-pka.c | 683 +++++++
drivers/crypto/starfive/starfive-regs.h | 200 ++
drivers/crypto/starfive/starfive-str.h | 194 ++
14 files changed, 4462 insertions(+)
create mode 100644 Documentation/devicetree/bindings/crypto/starfive-crypto.yaml
create mode 100644 drivers/crypto/starfive/Kconfig
create mode 100644 drivers/crypto/starfive/Makefile
create mode 100644 drivers/crypto/starfive/starfive-aes.c
create mode 100644 drivers/crypto/starfive/starfive-cryp.c
create mode 100644 drivers/crypto/starfive/starfive-hash.c
create mode 100644 drivers/crypto/starfive/starfive-pka.c
create mode 100644 drivers/crypto/starfive/starfive-regs.h
create mode 100644 drivers/crypto/starfive/starfive-str.h

--
2.25.1