[PATCH v10 00/33] crypto: rockchip: permit to pass self-tests

Herbert Xu herbert at gondor.apana.org.au
Thu Oct 27 22:01:43 PDT 2022


On Tue, Sep 27, 2022 at 07:54:38AM +0000, Corentin Labbe wrote:
> 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
> 
> Change since v6:
> - remove quotes around const values in dt-bindings
> 
> Changes since v7:
> - added lot of reviewed/tested by
> - In patch 14: keep initial reset pulse.
> 
> Changes since v8:
> - Removed some useless min/maxitems from dt-binding as reported by dt_binding_check
> 
> Change since v9:
> - removed redundant rst_ from reset-names
> - reworked patch #25 commit message
> 
> 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: add new compatible
>   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        | 127 ++++
>  .../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       | 506 ++++++++--------
>  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, 949 insertions(+), 688 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

Patches 1-25,29-33 applied.  Thanks.
-- 
Email: Herbert Xu <herbert at gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt



More information about the Linux-rockchip mailing list