# SPDX-License-Identifier: GPL-2.0-only
#
# Copyright (C) ST-Ericsson SA 2010
# Author: Shujuan Chen (shujuan.chen@stericsson.com)
#

config CRYPTO_DEV_UX500_CRYP
	tristate "UX500 crypto driver for CRYP block"
	depends on CRYPTO_DEV_UX500
	select CRYPTO_ALGAPI
	select CRYPTO_SKCIPHER
	select CRYPTO_LIB_DES
	help
        This selects the crypto driver for the UX500_CRYP hardware. It supports
        AES-ECB, CBC and CTR with keys sizes of 128, 192 and 256 bit sizes.

config CRYPTO_DEV_UX500_HASH
        tristate "UX500 crypto driver for HASH block"
        depends on CRYPTO_DEV_UX500
        select CRYPTO_HASH
	select CRYPTO_SHA1
	select CRYPTO_SHA256
        help
          This selects the hash driver for the UX500_HASH hardware.
          Depends on UX500/STM DMA if running in DMA mode.

config CRYPTO_DEV_UX500_DEBUG
	bool "Activate ux500 platform debug-mode for crypto and hash block"
	depends on CRYPTO_DEV_UX500_CRYP || CRYPTO_DEV_UX500_HASH
	help
	  Say Y if you want to add debug prints to ux500_hash and
	  ux500_cryp devices.
