From: Corentin Labbe <clabbe.montjoie@gmail.com> To: catalin.marinas@arm.com, davem@davemloft.net, herbert@gondor.apana.org.au, linux@armlinux.org.uk, mark.rutland@arm.com, mripard@kernel.org, robh+dt@kernel.org, wens@csie.org, will@kernel.org Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org, linux-sunxi@googlegroups.com, Corentin Labbe <clabbe.montjoie@gmail.com> Subject: [PATCH v6 00/11] crypto: add sun8i-ce driver for Allwinner crypto engine Date: Wed, 23 Oct 2019 22:05:02 +0200 [thread overview] Message-ID: <20191023200513.22630-1-clabbe.montjoie@gmail.com> (raw) 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@intel.com/dan.carpenter@oracle.com) 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 -- 2.21.0
WARNING: multiple messages have this Message-ID (diff)
From: Corentin Labbe <clabbe.montjoie@gmail.com> To: catalin.marinas@arm.com, davem@davemloft.net, herbert@gondor.apana.org.au, linux@armlinux.org.uk, mark.rutland@arm.com, mripard@kernel.org, robh+dt@kernel.org, wens@csie.org, will@kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-sunxi@googlegroups.com, Corentin Labbe <clabbe.montjoie@gmail.com>, linux-crypto@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH v6 00/11] crypto: add sun8i-ce driver for Allwinner crypto engine Date: Wed, 23 Oct 2019 22:05:02 +0200 [thread overview] Message-ID: <20191023200513.22630-1-clabbe.montjoie@gmail.com> (raw) 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@intel.com/dan.carpenter@oracle.com) 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 -- 2.21.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next reply other threads:[~2019-10-23 20:05 UTC|newest] Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-10-23 20:05 Corentin Labbe [this message] 2019-10-23 20:05 ` [PATCH v6 00/11] crypto: add sun8i-ce driver for Allwinner crypto engine Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 01/11] crypto: Add allwinner subdirectory Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 02/11] crypto: Add Allwinner sun8i-ce Crypto Engine Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 03/11] dt-bindings: crypto: Add DT bindings documentation for " Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 04/11] ARM: dts: sun8i: R40: add crypto engine node Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 05/11] ARM: dts: sun8i: H3: Add Crypto Engine node Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 06/11] ARM64: dts: allwinner: sun50i: Add Crypto Engine node on A64 Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 07/11] ARM64: dts: allwinner: sun50i: Add crypto engine node on H5 Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 08/11] ARM64: dts: allwinner: sun50i: Add Crypto Engine node on H6 Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 09/11] sunxi_defconfig: add new Allwinner crypto options Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 10/11] arm64: defconfig: " Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-10-23 20:05 ` [PATCH v6 11/11] crypto: sun4i-ss: Move to Allwinner directory Corentin Labbe 2019-10-23 20:05 ` Corentin Labbe 2019-11-01 6:09 ` [PATCH v6 00/11] crypto: add sun8i-ce driver for Allwinner crypto engine Herbert Xu 2019-11-01 6:09 ` Herbert Xu 2019-11-01 9:02 ` Maxime Ripard 2019-11-01 9:02 ` Maxime Ripard
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20191023200513.22630-1-clabbe.montjoie@gmail.com \ --to=clabbe.montjoie@gmail.com \ --cc=catalin.marinas@arm.com \ --cc=davem@davemloft.net \ --cc=devicetree@vger.kernel.org \ --cc=herbert@gondor.apana.org.au \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-crypto@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-sunxi@googlegroups.com \ --cc=linux@armlinux.org.uk \ --cc=mark.rutland@arm.com \ --cc=mripard@kernel.org \ --cc=robh+dt@kernel.org \ --cc=wens@csie.org \ --cc=will@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.