Re: [PATCH -next] crypto: hisilicon - qm depends on UACCE

From: Zhou Wang
Date: Tue Feb 25 2020 - 03:45:11 EST


On 2020/2/25 11:03, Hongbo Yao wrote:
> If UACCE=m and CRYPTO_DEV_HISI_QM=y, the following error
> is seen while building qm.o:
>
> drivers/crypto/hisilicon/qm.o: In function `hisi_qm_init':
> (.text+0x23c6): undefined reference to `uacce_alloc'
> (.text+0x2474): undefined reference to `uacce_remove'
> (.text+0x286b): undefined reference to `uacce_remove'
> drivers/crypto/hisilicon/qm.o: In function `hisi_qm_uninit':
> (.text+0x2918): undefined reference to `uacce_remove'
> make[1]: *** [vmlinux] Error 1
> make: *** [autoksyms_recursive] Error 2
>
> It has the similar issue while CONFIG_CRYPTO_DEV_HISI_ZIP=y, fix
> the config dependency for QM or ZIP here.
>
> reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> Signed-off-by: Hongbo Yao <yaohongbo@xxxxxxxxxx>
> ---
> drivers/crypto/hisilicon/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/crypto/hisilicon/Kconfig b/drivers/crypto/hisilicon/Kconfig
> index 8851161f722f..b35c2ec15bc2 100644
> --- a/drivers/crypto/hisilicon/Kconfig
> +++ b/drivers/crypto/hisilicon/Kconfig
> @@ -40,6 +40,7 @@ config CRYPTO_DEV_HISI_QM
> tristate
> depends on ARM64 || COMPILE_TEST
> depends on PCI && PCI_MSI
> + depends on UACCE
> help
> HiSilicon accelerator engines use a common queue management
> interface. Specific engine driver may use this module.
>

Indeed, this driver does not depend on uacce fully, as if there is no uacce, it still can
register to kernel crypto.

Seems that changing uacce config to bool can avoid this problem.

Best,
Zhou