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@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt