[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <dade39d2-db11-1830-eda0-d39b40f6c3aa@amd.com>
Date: Wed, 8 Apr 2020 12:00:05 -0500
From: Tom Lendacky <thomas.lendacky@....com>
To: Arnd Bergmann <arnd@...db.de>,
Herbert Xu <herbert@...dor.apana.org.au>,
"David S. Miller" <davem@...emloft.net>
Cc: Ard Biesheuvel <ardb@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Eric Biggers <ebiggers@...gle.com>,
linux-crypto@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] crypto: ccp -- don't "select" CONFIG_DMADEVICES
On 4/8/20 11:26 AM, Arnd Bergmann wrote:
> DMADEVICES is the top-level option for the slave DMA
> subsystem, and should not be selected by device drivers,
> as this can cause circular dependencies such as:
>
> drivers/net/ethernet/freescale/Kconfig:6:error: recursive dependency detected!
> drivers/net/ethernet/freescale/Kconfig:6: symbol NET_VENDOR_FREESCALE depends on PPC_BESTCOMM
> drivers/dma/bestcomm/Kconfig:6: symbol PPC_BESTCOMM depends on DMADEVICES
> drivers/dma/Kconfig:6: symbol DMADEVICES is selected by CRYPTO_DEV_SP_CCP
> drivers/crypto/ccp/Kconfig:10: symbol CRYPTO_DEV_SP_CCP depends on CRYPTO
> crypto/Kconfig:16: symbol CRYPTO is selected by LIBCRC32C
> lib/Kconfig:222: symbol LIBCRC32C is selected by LIQUIDIO
> drivers/net/ethernet/cavium/Kconfig:65: symbol LIQUIDIO depends on PTP_1588_CLOCK
> drivers/ptp/Kconfig:8: symbol PTP_1588_CLOCK is implied by FEC
> drivers/net/ethernet/freescale/Kconfig:23: symbol FEC depends on NET_VENDOR_FREESCALE
>
> The LIQUIDIO driver causing this problem is addressed in a
> separate patch, but this change is needed to prevent it from
> happening again.
>
> Using "depends on DMADEVICES" is what we do for all other
> implementations of slave DMA controllers as well.
>
> Fixes: b3c2fee5d66b ("crypto: ccp - Ensure all dependencies are specified")
> Signed-off-by: Arnd Bergmann <arnd@...db.de>
Acked-by: Tom Lendacky <thomas.lendacky@....com>
> ---
> drivers/crypto/ccp/Kconfig | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/crypto/ccp/Kconfig b/drivers/crypto/ccp/Kconfig
> index e0a8bd15aa74..32268e239bf1 100644
> --- a/drivers/crypto/ccp/Kconfig
> +++ b/drivers/crypto/ccp/Kconfig
> @@ -10,10 +10,9 @@ config CRYPTO_DEV_CCP_DD
> config CRYPTO_DEV_SP_CCP
> bool "Cryptographic Coprocessor device"
> default y
> - depends on CRYPTO_DEV_CCP_DD
> + depends on CRYPTO_DEV_CCP_DD && DMADEVICES
> select HW_RANDOM
> select DMA_ENGINE
> - select DMADEVICES
> select CRYPTO_SHA1
> select CRYPTO_SHA256
> help
>
Powered by blists - more mailing lists