On Wed, Oct 23, 2019 at 10:05:02PM +0200, Corentin Labbe wrote: > Hello > > This patch serie adds support for the Allwinner crypto engine. > The Crypto Engine is the third generation of Allwinner cryptogaphic offloader. > The first generation is the Security System already handled by the > sun4i-ss driver. > The second is named also Security System and is present on A80 and A83T > SoCs, originaly this driver supported it also, but supporting both IP bringing > too much complexity and another driver (sun8i-ss) will came for it. > > For the moment, the driver support only DES3/AES in ECB/CBC mode. > Patchs for CTR/CTS/XTS, RSA and RNGs will came later. > > This serie is tested with CRYPTO_MANAGER_EXTRA_TESTS > and tested on: > sun50i-a64-bananapi-m64 > sun50i-a64-pine64-plus > sun50i-h5-libretech-all-h3-cc > sun50i-h6-pine-h64 > sun8i-h2-plus-libretech-all-h3-cc > sun8i-h2-plus-orangepi-r1 > sun8i-h2-plus-orangepi-zero > sun8i-h3-libretech-all-h3-cc > sun8i-h3-orangepi-pc > sun8i-r40-bananapi-m2-ultra > > DT and defconfig will go thru the mripard tree > > Regards > > Changes since v5: > - fixed uninitialized err in sun8i_ce_allocate_chanlist (reported by lkp@xxxxxxxxx/dan.carpenter@xxxxxxxxxx) > > Changes since v4: > - fixed some typos in kconfig > - made sun8i_ce_pm_ops static > - Use devm_platform_ioremap_resource > > Changes since v3: > - removed need of reset-names > - made reset mandatory > > Changes since v2: > - changed additionalproperties > - splited fallbacks functions out of sun8i_ce_cipher() > - changed variant "model" to "has_t_dlen_in_bytes" > - splited sun8i_ce_register_algs/sun8i_ce_get_clks out of sun8i_ce_probe() > > Changes since v1: > - Add sun4i-ss to allwinner directory > - Cleaned variant structure > - Renamed clock name from ahb to bus (and mbus to ram) > - Fixed DT bindings problem reported by mripard > - Cleaned unneeded status = "" in R40 DT > - Removed old unnecessary interrupt_names in A64 DT > - Added arm64 defconfig > - Added support for PM functions > - Splitted probe functions > - Reworked clock settings > - made reset mandatory > > Corentin Labbe (11): > crypto: Add allwinner subdirectory > crypto: Add Allwinner sun8i-ce Crypto Engine > dt-bindings: crypto: Add DT bindings documentation for sun8i-ce Crypto > Engine > ARM: dts: sun8i: R40: add crypto engine node > ARM: dts: sun8i: H3: Add Crypto Engine node > ARM64: dts: allwinner: sun50i: Add Crypto Engine node on A64 > ARM64: dts: allwinner: sun50i: Add crypto engine node on H5 > ARM64: dts: allwinner: sun50i: Add Crypto Engine node on H6 > sunxi_defconfig: add new Allwinner crypto options > arm64: defconfig: add new Allwinner crypto options > crypto: sun4i-ss: Move to Allwinner directory > > .../bindings/crypto/allwinner,sun8i-ce.yaml | 88 +++ > MAINTAINERS | 4 +- > arch/arm/boot/dts/sun8i-h3.dtsi | 9 + > arch/arm/boot/dts/sun8i-r40.dtsi | 9 + > arch/arm/configs/sunxi_defconfig | 2 + > arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 9 + > arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 9 + > arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 9 + > arch/arm64/configs/defconfig | 2 + > drivers/crypto/Kconfig | 28 +- > drivers/crypto/Makefile | 2 +- > drivers/crypto/allwinner/Kconfig | 60 ++ > drivers/crypto/allwinner/Makefile | 2 + > .../{sunxi-ss => allwinner/sun4i-ss}/Makefile | 0 > .../sun4i-ss}/sun4i-ss-cipher.c | 0 > .../sun4i-ss}/sun4i-ss-core.c | 0 > .../sun4i-ss}/sun4i-ss-hash.c | 0 > .../sun4i-ss}/sun4i-ss-prng.c | 0 > .../sun4i-ss}/sun4i-ss.h | 0 > drivers/crypto/allwinner/sun8i-ce/Makefile | 2 + > .../allwinner/sun8i-ce/sun8i-ce-cipher.c | 434 +++++++++++ > .../crypto/allwinner/sun8i-ce/sun8i-ce-core.c | 676 ++++++++++++++++++ > drivers/crypto/allwinner/sun8i-ce/sun8i-ce.h | 254 +++++++ > 23 files changed, 1570 insertions(+), 29 deletions(-) > create mode 100644 Documentation/devicetree/bindings/crypto/allwinner,sun8i-ce.yaml > create mode 100644 drivers/crypto/allwinner/Kconfig > create mode 100644 drivers/crypto/allwinner/Makefile > rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/Makefile (100%) > rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss-cipher.c (100%) > rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss-core.c (100%) > rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss-hash.c (100%) > rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss-prng.c (100%) > rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss.h (100%) > create mode 100644 drivers/crypto/allwinner/sun8i-ce/Makefile > create mode 100644 drivers/crypto/allwinner/sun8i-ce/sun8i-ce-cipher.c > create mode 100644 drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c > create mode 100644 drivers/crypto/allwinner/sun8i-ce/sun8i-ce.h Patches 1,2,11 applied. Thanks. -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt