Hello!
This patchset expand the funcionality of the Amlogic
crypto driver by adding support for more SoC families:
AXG, G12A, G12B, SM1, A1, S4.
Also specify and enable crypto node in device tree
for reference Amlogic devices.
Tested on AXG, G12A/B, SM1, A1 and S4 devices via
custom tests and trcypt module.
---
Changes V1 -> V2:
- Rebased over linux-next.
- Adjusted device tree bindings description.
- A1 and S4 dts use their own compatible, which is a G12 fallback.
V1: https://lore.kernel.org/all/20240110201216.18016-1-avromanov@xxxxxxxxxxxxxxxxx/
Alexey Romanov (20):
drivers: crypto: meson: don't hardcode IRQ count
drivers: crypto: meson: make CLK controller optional
drviers: crypto: meson: add platform data
drivers: crypto: meson: add MMIO helpers
drivers: crypto: meson: move get_engine_number()
drivers: crypto: meson: drop status field from meson_flow
drivers: crypto: meson: move algs definition and cipher API to
cipher.c
drivers: crypto: meson: cleanup defines
drivers: crypto: meson: process more than MAXDESCS descriptors
drivers: crypto: meson: avoid kzalloc in engine thread
drivers: crypto: meson: introduce hasher
drivers: crypto: meson: add support for AES-CTR
drivers: crypto: meson: use fallback for 192-bit keys
drivers: crypto: meson: add support for G12-series
drivers: crypto: meson: add support for AXG-series
dt-bindings: crypto: meson: add new compatibles
arch: arm64: dts: meson: a1: add crypto node
arch: arm64: dts: meson: s4: add crypto node
arch: arm64: dts: meson: g12: add crypto node
arch: arm64: dts: meson: axg: add crypto node
.../bindings/crypto/amlogic,gxl-crypto.yaml | 31 +-
arch/arm64/boot/dts/amlogic/meson-a1.dtsi | 7 +
arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 6 +
.../boot/dts/amlogic/meson-g12-common.dtsi | 6 +
arch/arm64/boot/dts/amlogic/meson-s4.dtsi | 6 +
drivers/crypto/amlogic/Makefile | 2 +-
drivers/crypto/amlogic/amlogic-gxl-cipher.c | 602 ++++++++++++------
drivers/crypto/amlogic/amlogic-gxl-core.c | 281 ++++----
drivers/crypto/amlogic/amlogic-gxl-hasher.c | 452 +++++++++++++
drivers/crypto/amlogic/amlogic-gxl.h | 115 +++-
10 files changed, 1165 insertions(+), 343 deletions(-)
create mode 100644 drivers/crypto/amlogic/amlogic-gxl-hasher.c