--- /dev/null
+From aee1f9f3c30e1e20e7f74729ced61eac7d74ca68 Mon Sep 17 00:00:00 2001
+From: YueHaibing <yuehaibing@huawei.com>
+Date: Wed, 13 Nov 2019 17:55:50 +0800
+Subject: crypto: atmel - Fix build error of CRYPTO_AUTHENC
+
+From: YueHaibing <yuehaibing@huawei.com>
+
+commit aee1f9f3c30e1e20e7f74729ced61eac7d74ca68 upstream.
+
+If CRYPTO_DEV_ATMEL_AUTHENC is m, CRYPTO_DEV_ATMEL_SHA is m,
+but CRYPTO_DEV_ATMEL_AES is y, building will fail:
+
+drivers/crypto/atmel-aes.o: In function `atmel_aes_authenc_init_tfm':
+atmel-aes.c:(.text+0x670): undefined reference to `atmel_sha_authenc_get_reqsize'
+atmel-aes.c:(.text+0x67a): undefined reference to `atmel_sha_authenc_spawn'
+drivers/crypto/atmel-aes.o: In function `atmel_aes_authenc_setkey':
+atmel-aes.c:(.text+0x7e5): undefined reference to `atmel_sha_authenc_setkey'
+
+Make CRYPTO_DEV_ATMEL_AUTHENC depend on CRYPTO_DEV_ATMEL_AES,
+and select CRYPTO_DEV_ATMEL_SHA and CRYPTO_AUTHENC for it under there.
+
+Reported-by: Hulk Robot <hulkci@huawei.com>
+Suggested-by: Herbert Xu <herbert@gondor.apana.org.au>
+Fixes: 89a82ef87e01 ("crypto: atmel-authenc - add support to...")
+Signed-off-by: YueHaibing <yuehaibing@huawei.com>
+Reviewed-by: Tudor Ambarus <tudor.ambarus@microchip.com>
+Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+
+---
+ drivers/crypto/Kconfig | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+--- a/drivers/crypto/Kconfig
++++ b/drivers/crypto/Kconfig
+@@ -491,10 +491,9 @@ if CRYPTO_DEV_UX500
+ endif # if CRYPTO_DEV_UX500
+
+ config CRYPTO_DEV_ATMEL_AUTHENC
+- tristate "Support for Atmel IPSEC/SSL hw accelerator"
++ bool "Support for Atmel IPSEC/SSL hw accelerator"
+ depends on ARCH_AT91 || COMPILE_TEST
+- select CRYPTO_DEV_ATMEL_AES
+- select CRYPTO_DEV_ATMEL_SHA
++ depends on CRYPTO_DEV_ATMEL_AES
+ help
+ Some Atmel processors can combine the AES and SHA hw accelerators
+ to enhance support of IPSEC/SSL.
+@@ -507,7 +506,8 @@ config CRYPTO_DEV_ATMEL_AES
+ select CRYPTO_AES
+ select CRYPTO_AEAD
+ select CRYPTO_BLKCIPHER
+- select CRYPTO_AUTHENC
++ select CRYPTO_AUTHENC if CRYPTO_DEV_ATMEL_AUTHENC
++ select CRYPTO_DEV_ATMEL_SHA if CRYPTO_DEV_ATMEL_AUTHENC
+ help
+ Some Atmel processors have AES hw accelerator.
+ Select this if you want to use the Atmel module for
--- /dev/null
+From d158367682cd822aca811971e988be6a8d8f679f Mon Sep 17 00:00:00 2001
+From: Tudor Ambarus <tudor.ambarus@microchip.com>
+Date: Fri, 1 Nov 2019 16:40:37 +0000
+Subject: crypto: atmel - Fix selection of CRYPTO_AUTHENC
+
+From: Tudor Ambarus <tudor.ambarus@microchip.com>
+
+commit d158367682cd822aca811971e988be6a8d8f679f upstream.
+
+The following error is raised when CONFIG_CRYPTO_DEV_ATMEL_AES=y and
+CONFIG_CRYPTO_DEV_ATMEL_AUTHENC=m:
+drivers/crypto/atmel-aes.o: In function `atmel_aes_authenc_setkey':
+atmel-aes.c:(.text+0x9bc): undefined reference to `crypto_authenc_extractkeys'
+Makefile:1094: recipe for target 'vmlinux' failed
+
+Fix it by moving the selection of CRYPTO_AUTHENC under
+config CRYPTO_DEV_ATMEL_AES.
+
+Fixes: 89a82ef87e01 ("crypto: atmel-authenc - add support to...")
+Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
+Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/crypto/Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/crypto/Kconfig
++++ b/drivers/crypto/Kconfig
+@@ -493,7 +493,6 @@ endif # if CRYPTO_DEV_UX500
+ config CRYPTO_DEV_ATMEL_AUTHENC
+ tristate "Support for Atmel IPSEC/SSL hw accelerator"
+ depends on ARCH_AT91 || COMPILE_TEST
+- select CRYPTO_AUTHENC
+ select CRYPTO_DEV_ATMEL_AES
+ select CRYPTO_DEV_ATMEL_SHA
+ help
+@@ -508,6 +507,7 @@ config CRYPTO_DEV_ATMEL_AES
+ select CRYPTO_AES
+ select CRYPTO_AEAD
+ select CRYPTO_BLKCIPHER
++ select CRYPTO_AUTHENC
+ help
+ Some Atmel processors have AES hw accelerator.
+ Select this if you want to use the Atmel module for