All of lore.kernel.org
 help / color / mirror / Atom feed
From: Corentin Labbe <clabbe@baylibre.com>
To: heiko@sntech.de, herbert@gondor.apana.org.au,
	krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org
Cc: linux-crypto@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org,
	Corentin Labbe <clabbe@baylibre.com>
Subject: [PATCH v6 00/33] crypto: rockchip: permit to pass self-tests
Date: Mon, 25 Apr 2022 20:20:46 +0000	[thread overview]
Message-ID: <20220425202119.3566743-1-clabbe@baylibre.com> (raw)

Hello

The rockchip crypto driver is broken and do not pass self-tests.
This serie's goal is to permit to become usable and pass self-tests.

This whole serie is tested on a rk3328-rock64, rk3288-miqi and
rk3399-khadas-edge-v with selftests (with CONFIG_CRYPTO_MANAGER_EXTRA_TESTS=y)

Regards

Changes since v1:
- select CRYPTO_ENGINE
- forgot to free fallbacks TFMs
- fixed kernel test robots warning
- add the PM patch

Changes since v2:
- Added DMA clock back to 3288 since it dont work without it
- fallback needed to select CBC and ECB configs
- Added support for rk3399
- Added more patch (style, read_poll_timeout)

Changes since v3:
- full rewrite of support for RK3399
- splited dt-binding patch in two

Changes since v4:
- Another full rewrite of support for RK3399
- Fixed dt-binding from Krzysztof Kozlowski's comments
- Use readl_poll_timeout() instead of read_poll_timeout()
- Rewrite the fallback SG tests

Changes since v5:
- fixed errors in DT binding patch

Corentin Labbe (33):
  crypto: rockchip: use dev_err for error message about interrupt
  crypto: rockchip: do not use uninitialized variable
  crypto: rockchip: do not do custom power management
  crypto: rockchip: fix privete/private typo
  crypto: rockchip: do not store mode globally
  crypto: rockchip: add fallback for cipher
  crypto: rockchip: add fallback for ahash
  crypto: rockchip: better handle cipher key
  crypto: rockchip: remove non-aligned handling
  crypto: rockchip: rework by using crypto_engine
  crypto: rockchip: rewrite type
  crypto: rockchip: add debugfs
  crypto: rockchip: introduce PM
  crypto: rockchip: handle reset also in PM
  crypto: rockchip: use clk_bulk to simplify clock management
  crypto: rockchip: add myself as maintainer
  crypto: rockchip: use read_poll_timeout
  crypto: rockchip: fix style issue
  crypto: rockchip: add support for rk3328
  crypto: rockchip: rename ablk functions to cipher
  crypto: rockchip: rework rk_handle_req function
  crypto: rockchip: use a rk_crypto_info variable instead of lot of
    indirection
  crypto: rockchip: use the rk_crypto_info given as parameter
  dt-bindings: crypto: convert rockchip-crypto to YAML
  dt-bindings: crypto: rockchip: convert to new driver bindings
  clk: rk3399: use proper crypto0 name
  arm64: dts: rockchip: add rk3328 crypto node
  arm64: dts: rockchip: rk3399: add crypto node
  crypto: rockchip: store crypto_info in request context
  crypto: rockchip: Check for clocks numbers and their frequencies
  crypto: rockchip: rk_ahash_reg_init use crypto_info from parameter
  crypto: rockchip: permit to have more than one reset
  crypto: rockchip: Add support for RK3399

 .../crypto/rockchip,rk3288-crypto.yaml        | 133 +++++
 .../bindings/crypto/rockchip-crypto.txt       |  28 -
 MAINTAINERS                                   |   7 +
 arch/arm64/boot/dts/rockchip/rk3328.dtsi      |  11 +
 arch/arm64/boot/dts/rockchip/rk3399.dtsi      |  20 +
 drivers/crypto/Kconfig                        |  15 +
 drivers/crypto/rockchip/rk3288_crypto.c       | 511 ++++++++--------
 drivers/crypto/rockchip/rk3288_crypto.h       | 107 ++--
 drivers/crypto/rockchip/rk3288_crypto_ahash.c | 267 +++++----
 .../crypto/rockchip/rk3288_crypto_skcipher.c  | 543 ++++++++++--------
 include/dt-bindings/clock/rk3399-cru.h        |   6 +-
 11 files changed, 953 insertions(+), 695 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/crypto/rockchip,rk3288-crypto.yaml
 delete mode 100644 Documentation/devicetree/bindings/crypto/rockchip-crypto.txt

-- 
2.35.1


WARNING: multiple messages have this Message-ID (diff)
From: Corentin Labbe <clabbe@baylibre.com>
To: heiko@sntech.de, herbert@gondor.apana.org.au,
	krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org
Cc: linux-crypto@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org,
	Corentin Labbe <clabbe@baylibre.com>
Subject: [PATCH v6 00/33] crypto: rockchip: permit to pass self-tests
Date: Mon, 25 Apr 2022 20:20:46 +0000	[thread overview]
Message-ID: <20220425202119.3566743-1-clabbe@baylibre.com> (raw)

Hello

The rockchip crypto driver is broken and do not pass self-tests.
This serie's goal is to permit to become usable and pass self-tests.

This whole serie is tested on a rk3328-rock64, rk3288-miqi and
rk3399-khadas-edge-v with selftests (with CONFIG_CRYPTO_MANAGER_EXTRA_TESTS=y)

Regards

Changes since v1:
- select CRYPTO_ENGINE
- forgot to free fallbacks TFMs
- fixed kernel test robots warning
- add the PM patch

Changes since v2:
- Added DMA clock back to 3288 since it dont work without it
- fallback needed to select CBC and ECB configs
- Added support for rk3399
- Added more patch (style, read_poll_timeout)

Changes since v3:
- full rewrite of support for RK3399
- splited dt-binding patch in two

Changes since v4:
- Another full rewrite of support for RK3399
- Fixed dt-binding from Krzysztof Kozlowski's comments
- Use readl_poll_timeout() instead of read_poll_timeout()
- Rewrite the fallback SG tests

Changes since v5:
- fixed errors in DT binding patch

Corentin Labbe (33):
  crypto: rockchip: use dev_err for error message about interrupt
  crypto: rockchip: do not use uninitialized variable
  crypto: rockchip: do not do custom power management
  crypto: rockchip: fix privete/private typo
  crypto: rockchip: do not store mode globally
  crypto: rockchip: add fallback for cipher
  crypto: rockchip: add fallback for ahash
  crypto: rockchip: better handle cipher key
  crypto: rockchip: remove non-aligned handling
  crypto: rockchip: rework by using crypto_engine
  crypto: rockchip: rewrite type
  crypto: rockchip: add debugfs
  crypto: rockchip: introduce PM
  crypto: rockchip: handle reset also in PM
  crypto: rockchip: use clk_bulk to simplify clock management
  crypto: rockchip: add myself as maintainer
  crypto: rockchip: use read_poll_timeout
  crypto: rockchip: fix style issue
  crypto: rockchip: add support for rk3328
  crypto: rockchip: rename ablk functions to cipher
  crypto: rockchip: rework rk_handle_req function
  crypto: rockchip: use a rk_crypto_info variable instead of lot of
    indirection
  crypto: rockchip: use the rk_crypto_info given as parameter
  dt-bindings: crypto: convert rockchip-crypto to YAML
  dt-bindings: crypto: rockchip: convert to new driver bindings
  clk: rk3399: use proper crypto0 name
  arm64: dts: rockchip: add rk3328 crypto node
  arm64: dts: rockchip: rk3399: add crypto node
  crypto: rockchip: store crypto_info in request context
  crypto: rockchip: Check for clocks numbers and their frequencies
  crypto: rockchip: rk_ahash_reg_init use crypto_info from parameter
  crypto: rockchip: permit to have more than one reset
  crypto: rockchip: Add support for RK3399

 .../crypto/rockchip,rk3288-crypto.yaml        | 133 +++++
 .../bindings/crypto/rockchip-crypto.txt       |  28 -
 MAINTAINERS                                   |   7 +
 arch/arm64/boot/dts/rockchip/rk3328.dtsi      |  11 +
 arch/arm64/boot/dts/rockchip/rk3399.dtsi      |  20 +
 drivers/crypto/Kconfig                        |  15 +
 drivers/crypto/rockchip/rk3288_crypto.c       | 511 ++++++++--------
 drivers/crypto/rockchip/rk3288_crypto.h       | 107 ++--
 drivers/crypto/rockchip/rk3288_crypto_ahash.c | 267 +++++----
 .../crypto/rockchip/rk3288_crypto_skcipher.c  | 543 ++++++++++--------
 include/dt-bindings/clock/rk3399-cru.h        |   6 +-
 11 files changed, 953 insertions(+), 695 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/crypto/rockchip,rk3288-crypto.yaml
 delete mode 100644 Documentation/devicetree/bindings/crypto/rockchip-crypto.txt

-- 
2.35.1


_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

WARNING: multiple messages have this Message-ID (diff)
From: Corentin Labbe <clabbe@baylibre.com>
To: heiko@sntech.de, herbert@gondor.apana.org.au,
	krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org
Cc: linux-crypto@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org,
	Corentin Labbe <clabbe@baylibre.com>
Subject: [PATCH v6 00/33] crypto: rockchip: permit to pass self-tests
Date: Mon, 25 Apr 2022 20:20:46 +0000	[thread overview]
Message-ID: <20220425202119.3566743-1-clabbe@baylibre.com> (raw)

Hello

The rockchip crypto driver is broken and do not pass self-tests.
This serie's goal is to permit to become usable and pass self-tests.

This whole serie is tested on a rk3328-rock64, rk3288-miqi and
rk3399-khadas-edge-v with selftests (with CONFIG_CRYPTO_MANAGER_EXTRA_TESTS=y)

Regards

Changes since v1:
- select CRYPTO_ENGINE
- forgot to free fallbacks TFMs
- fixed kernel test robots warning
- add the PM patch

Changes since v2:
- Added DMA clock back to 3288 since it dont work without it
- fallback needed to select CBC and ECB configs
- Added support for rk3399
- Added more patch (style, read_poll_timeout)

Changes since v3:
- full rewrite of support for RK3399
- splited dt-binding patch in two

Changes since v4:
- Another full rewrite of support for RK3399
- Fixed dt-binding from Krzysztof Kozlowski's comments
- Use readl_poll_timeout() instead of read_poll_timeout()
- Rewrite the fallback SG tests

Changes since v5:
- fixed errors in DT binding patch

Corentin Labbe (33):
  crypto: rockchip: use dev_err for error message about interrupt
  crypto: rockchip: do not use uninitialized variable
  crypto: rockchip: do not do custom power management
  crypto: rockchip: fix privete/private typo
  crypto: rockchip: do not store mode globally
  crypto: rockchip: add fallback for cipher
  crypto: rockchip: add fallback for ahash
  crypto: rockchip: better handle cipher key
  crypto: rockchip: remove non-aligned handling
  crypto: rockchip: rework by using crypto_engine
  crypto: rockchip: rewrite type
  crypto: rockchip: add debugfs
  crypto: rockchip: introduce PM
  crypto: rockchip: handle reset also in PM
  crypto: rockchip: use clk_bulk to simplify clock management
  crypto: rockchip: add myself as maintainer
  crypto: rockchip: use read_poll_timeout
  crypto: rockchip: fix style issue
  crypto: rockchip: add support for rk3328
  crypto: rockchip: rename ablk functions to cipher
  crypto: rockchip: rework rk_handle_req function
  crypto: rockchip: use a rk_crypto_info variable instead of lot of
    indirection
  crypto: rockchip: use the rk_crypto_info given as parameter
  dt-bindings: crypto: convert rockchip-crypto to YAML
  dt-bindings: crypto: rockchip: convert to new driver bindings
  clk: rk3399: use proper crypto0 name
  arm64: dts: rockchip: add rk3328 crypto node
  arm64: dts: rockchip: rk3399: add crypto node
  crypto: rockchip: store crypto_info in request context
  crypto: rockchip: Check for clocks numbers and their frequencies
  crypto: rockchip: rk_ahash_reg_init use crypto_info from parameter
  crypto: rockchip: permit to have more than one reset
  crypto: rockchip: Add support for RK3399

 .../crypto/rockchip,rk3288-crypto.yaml        | 133 +++++
 .../bindings/crypto/rockchip-crypto.txt       |  28 -
 MAINTAINERS                                   |   7 +
 arch/arm64/boot/dts/rockchip/rk3328.dtsi      |  11 +
 arch/arm64/boot/dts/rockchip/rk3399.dtsi      |  20 +
 drivers/crypto/Kconfig                        |  15 +
 drivers/crypto/rockchip/rk3288_crypto.c       | 511 ++++++++--------
 drivers/crypto/rockchip/rk3288_crypto.h       | 107 ++--
 drivers/crypto/rockchip/rk3288_crypto_ahash.c | 267 +++++----
 .../crypto/rockchip/rk3288_crypto_skcipher.c  | 543 ++++++++++--------
 include/dt-bindings/clock/rk3399-cru.h        |   6 +-
 11 files changed, 953 insertions(+), 695 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/crypto/rockchip,rk3288-crypto.yaml
 delete mode 100644 Documentation/devicetree/bindings/crypto/rockchip-crypto.txt

-- 
2.35.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

             reply	other threads:[~2022-04-25 20:21 UTC|newest]

Thread overview: 108+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-25 20:20 Corentin Labbe [this message]
2022-04-25 20:20 ` [PATCH v6 00/33] crypto: rockchip: permit to pass self-tests Corentin Labbe
2022-04-25 20:20 ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 01/33] crypto: rockchip: use dev_err for error message about interrupt Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 02/33] crypto: rockchip: do not use uninitialized variable Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 03/33] crypto: rockchip: do not do custom power management Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 04/33] crypto: rockchip: fix privete/private typo Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 05/33] crypto: rockchip: do not store mode globally Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 06/33] crypto: rockchip: add fallback for cipher Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 07/33] crypto: rockchip: add fallback for ahash Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 08/33] crypto: rockchip: better handle cipher key Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 09/33] crypto: rockchip: remove non-aligned handling Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 10/33] crypto: rockchip: rework by using crypto_engine Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 11/33] crypto: rockchip: rewrite type Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 12/33] crypto: rockchip: add debugfs Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20 ` [PATCH v6 13/33] crypto: rockchip: introduce PM Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:20   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 14/33] crypto: rockchip: handle reset also in PM Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 15/33] crypto: rockchip: use clk_bulk to simplify clock management Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 16/33] crypto: rockchip: add myself as maintainer Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 17/33] crypto: rockchip: use read_poll_timeout Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 18/33] crypto: rockchip: fix style issue Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 19/33] crypto: rockchip: add support for rk3328 Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 20/33] crypto: rockchip: rename ablk functions to cipher Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 21/33] crypto: rockchip: rework rk_handle_req function Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 22/33] crypto: rockchip: use a rk_crypto_info variable instead of lot of indirection Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 23/33] crypto: rockchip: use the rk_crypto_info given as parameter Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 24/33] dt-bindings: crypto: convert rockchip-crypto to YAML Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-26  7:13   ` Krzysztof Kozlowski
2022-04-26  7:13     ` Krzysztof Kozlowski
2022-04-26  7:13     ` Krzysztof Kozlowski
2022-04-25 20:21 ` [PATCH v6 25/33] dt-bindings: crypto: rockchip: convert to new driver bindings Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-26  7:17   ` Krzysztof Kozlowski
2022-04-26  7:17     ` Krzysztof Kozlowski
2022-04-26  7:17     ` Krzysztof Kozlowski
2022-04-25 20:21 ` [PATCH v6 26/33] clk: rk3399: use proper crypto0 name Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 27/33] arm64: dts: rockchip: add rk3328 crypto node Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 28/33] arm64: dts: rockchip: rk3399: add " Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 29/33] crypto: rockchip: store crypto_info in request context Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 30/33] crypto: rockchip: Check for clocks numbers and their frequencies Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 31/33] crypto: rockchip: rk_ahash_reg_init use crypto_info from parameter Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 32/33] crypto: rockchip: permit to have more than one reset Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21 ` [PATCH v6 33/33] crypto: rockchip: Add support for RK3399 Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe
2022-04-25 20:21   ` Corentin Labbe

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=20220425202119.3566743-1-clabbe@baylibre.com \
    --to=clabbe@baylibre.com \
    --cc=devicetree@vger.kernel.org \
    --cc=heiko@sntech.de \
    --cc=herbert@gondor.apana.org.au \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=robh+dt@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: link
Be 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.