• Kamil Konieczny's avatar
    crypto: s5p-sss - Add HASH support for Exynos · c2afad6c
    Kamil Konieczny authored
    Add support for MD5, SHA1, SHA256 hash algorithms for Exynos HW.
    It uses the crypto framework asynchronous hash api.
    It is based on omap-sham.c driver.
    S5P has some HW differencies and is not implemented.
    
    Modifications in s5p-sss:
    
    - Add hash supporting structures and functions.
    
    - Modify irq handler to handle both aes and hash signals.
    
    - Resize resource end in probe if EXYNOS_HASH is enabled in
      Kconfig.
    
    - Add new copyright line and new author.
    
    - Tested on Odroid-U3 with Exynos 4412 CPU, kernel 4.13-rc6
      with crypto run-time self test testmgr
      and with tcrypt module with: modprobe tcrypt sec=1 mode=N
      where N=402, 403, 404 (MD5, SHA1, SHA256).
    
    Modifications in drivers/crypto/Kconfig:
    
    - Add new CRYPTO_DEV_EXYNOS_HASH, depend on !EXYNOS_RNG
      and CRYPTO_DEV_S5P
    
    - Select sw algorithms MD5, SHA1 and SHA256 in EXYNOS_HASH
      as they are needed for fallback.
    Acked-by: default avatarVladimir Zapolskiy <vz@mleia.com>
    Reviewed-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
    Signed-off-by: default avatarKamil Konieczny <k.konieczny@partner.samsung.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    c2afad6c
s5p-sss.c 57.9 KB