Subject: linux-next: build failure after merge of the crypto tree

From: Stephen Rothwell <[email-masked]>
Date: Tue, 21 Apr 2020 15:12:40 +1000

Hi all,

After merging the crypto tree, today's linux-next build (powerpc
allyesconfig) failed like this:

WARNING: unmet direct dependencies detected for CRYPTO_DEV_HISI_QM
  Depends on [n]: CRYPTO [=y] && CRYPTO_HW [=y] && (ARM64 || COMPILE_TEST [=y]) && PCI [=y] && PCI_MSI [=y] && (UACCE [=y] || UACCE [=y]=n) && ACPI
  Selected by [y]:
  - CRYPTO_DEV_HISI_SEC2 [=y] && CRYPTO [=y] && CRYPTO_HW [=y] && PCI [=y] && PCI_MSI [=y] && (UACCE [=y] || UACCE [=y]=n) && (ARM64 || COMPILE_TEST [=y] && 64BIT [=y])
  - CRYPTO_DEV_HISI_ZIP [=y] && CRYPTO [=y] && CRYPTO_HW [=y] && PCI [=y] && PCI_MSI [=y] && (ARM64 || COMPILE_TEST [=y] && 64BIT [=y]) && (!CPU_BIG_ENDIAN [=y] || COMPILE_TEST [=y]) && (UACCE [=y] || UACCE [=y]=n)
  - CRYPTO_DEV_HISI_HPRE [=y] && CRYPTO [=y] && CRYPTO_HW [=y] && PCI [=y] && PCI_MSI [=y] && (UACCE [=y] || UACCE [=y]=n) && (ARM64 || COMPILE_TEST [=y] && 64BIT [=y])

drivers/crypto/hisilicon/qm.c: In function 'qm_soft_reset':
drivers/crypto/hisilicon/qm.c:2915:7: error: implicit declaration of function 'acpi_evaluate_integer'; did you mean 'acpi_evaluate_object'? [-Werror=implicit-function-declaration]
 2915 |   s = acpi_evaluate_integer(ACPI_HANDLE(&pdev->dev),
      |       ^~~~~~~~~~~~~~~~~~~~~
      |       acpi_evaluate_object

Caused by commit

  6c6dd5802c2d ("crypto: hisilicon/qm - add controller reset interface")

Unfortunately not fixed by commit

  f88480e300ac ("crypto: hisilicon/qm - fix build failure with ACPI off")

[the moral is "don't select symbols that have dependencies" :-( ]

I have added the following patch for today

From: Stephen Rothwell <[email-masked]>
Date: Tue, 21 Apr 2020 14:56:49 +1000
Subject: [PATCH] crypto: hisilicon/qm add more ACPI dependencies

due to the selects of CRYPTO_DEV_HISI_QM which now depends on ACPI

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 drivers/crypto/hisilicon/Kconfig | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/crypto/hisilicon/Kconfig b/drivers/crypto/hisilicon/Kconfig
index 99e962e39f36..9c3b3ca815e6 100644
--- a/drivers/crypto/hisilicon/Kconfig
+++ b/drivers/crypto/hisilicon/Kconfig
@@ -29,6 +29,7 @@ config CRYPTO_DEV_HISI_SEC2
 	depends on PCI && PCI_MSI
 	depends on UACCE || UACCE=n
 	depends on ARM64 || (COMPILE_TEST && 64BIT)
+	depends on ACPI
 	help
 	  Support for HiSilicon SEC Engine of version 2 in crypto subsystem.
 	  It provides AES, SM4, and 3DES algorithms with ECB
@@ -53,6 +54,7 @@ config CRYPTO_DEV_HISI_ZIP
 	depends on ARM64 || (COMPILE_TEST && 64BIT)
 	depends on !CPU_BIG_ENDIAN || COMPILE_TEST
 	depends on UACCE || UACCE=n
+	depends on ACPI
 	select CRYPTO_DEV_HISI_QM
 	help
 	  Support for HiSilicon ZIP Driver
@@ -62,6 +64,7 @@ config CRYPTO_DEV_HISI_HPRE
 	depends on PCI && PCI_MSI
 	depends on UACCE || UACCE=n
 	depends on ARM64 || (COMPILE_TEST && 64BIT)
+	depends on ACPI
 	select CRYPTO_DEV_HISI_QM
 	select CRYPTO_DH
 	select CRYPTO_RSA
-- 
2.25.1

-- 
Cheers,
Stephen Rothwell