mediatek/mt7622: enable accelerated crypto drivers
Use ARMv8 Crypto Extensions for AES, ghash and sha256. This results in a 16 times speed gain in speed for aes-128-ctr, 17x in aes-128-gcm, and 9 times in sha256. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
This commit is contained in:
		
				
					committed by
					
						
						Daniel Golle
					
				
			
			
				
	
			
			
			
						parent
						
							aece8f5ae8
						
					
				
				
					commit
					c9c2b01b84
				
			@@ -18,6 +18,7 @@ CONFIG_ARCH_SUSPEND_POSSIBLE=y
 | 
				
			|||||||
CONFIG_ARM64=y
 | 
					CONFIG_ARM64=y
 | 
				
			||||||
CONFIG_ARM64_4K_PAGES=y
 | 
					CONFIG_ARM64_4K_PAGES=y
 | 
				
			||||||
# CONFIG_ARM64_CNP is not set
 | 
					# CONFIG_ARM64_CNP is not set
 | 
				
			||||||
 | 
					CONFIG_ARM64_CRYPTO=y
 | 
				
			||||||
CONFIG_ARM64_ERRATUM_843419=y
 | 
					CONFIG_ARM64_ERRATUM_843419=y
 | 
				
			||||||
CONFIG_ARM64_ERRATUM_845719=y
 | 
					CONFIG_ARM64_ERRATUM_845719=y
 | 
				
			||||||
CONFIG_ARM64_MODULE_PLTS=y
 | 
					CONFIG_ARM64_MODULE_PLTS=y
 | 
				
			||||||
@@ -110,9 +111,14 @@ CONFIG_CPU_RMAP=y
 | 
				
			|||||||
CONFIG_CPU_THERMAL=y
 | 
					CONFIG_CPU_THERMAL=y
 | 
				
			||||||
CONFIG_CRC16=y
 | 
					CONFIG_CRC16=y
 | 
				
			||||||
CONFIG_CRYPTO_ACOMP2=y
 | 
					CONFIG_CRYPTO_ACOMP2=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AES_ARM64=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AES_ARM64_CE=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
 | 
				
			||||||
CONFIG_CRYPTO_CMAC=y
 | 
					CONFIG_CRYPTO_CMAC=y
 | 
				
			||||||
CONFIG_CRYPTO_CRC32=y
 | 
					CONFIG_CRYPTO_CRC32=y
 | 
				
			||||||
CONFIG_CRYPTO_CRC32C=y
 | 
					CONFIG_CRYPTO_CRC32C=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_CRYPTD=y
 | 
				
			||||||
CONFIG_CRYPTO_DEFLATE=y
 | 
					CONFIG_CRYPTO_DEFLATE=y
 | 
				
			||||||
CONFIG_CRYPTO_DRBG=y
 | 
					CONFIG_CRYPTO_DRBG=y
 | 
				
			||||||
CONFIG_CRYPTO_DRBG_HMAC=y
 | 
					CONFIG_CRYPTO_DRBG_HMAC=y
 | 
				
			||||||
@@ -120,6 +126,7 @@ CONFIG_CRYPTO_DRBG_MENU=y
 | 
				
			|||||||
CONFIG_CRYPTO_ECB=y
 | 
					CONFIG_CRYPTO_ECB=y
 | 
				
			||||||
CONFIG_CRYPTO_ECC=y
 | 
					CONFIG_CRYPTO_ECC=y
 | 
				
			||||||
CONFIG_CRYPTO_ECDH=y
 | 
					CONFIG_CRYPTO_ECDH=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_GHASH_ARM64_CE=y
 | 
				
			||||||
CONFIG_CRYPTO_HASH_INFO=y
 | 
					CONFIG_CRYPTO_HASH_INFO=y
 | 
				
			||||||
CONFIG_CRYPTO_HMAC=y
 | 
					CONFIG_CRYPTO_HMAC=y
 | 
				
			||||||
CONFIG_CRYPTO_JITTERENTROPY=y
 | 
					CONFIG_CRYPTO_JITTERENTROPY=y
 | 
				
			||||||
@@ -131,6 +138,9 @@ CONFIG_CRYPTO_RNG=y
 | 
				
			|||||||
CONFIG_CRYPTO_RNG2=y
 | 
					CONFIG_CRYPTO_RNG2=y
 | 
				
			||||||
CONFIG_CRYPTO_RNG_DEFAULT=y
 | 
					CONFIG_CRYPTO_RNG_DEFAULT=y
 | 
				
			||||||
CONFIG_CRYPTO_SHA256=y
 | 
					CONFIG_CRYPTO_SHA256=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_SHA256_ARM64=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_SHA2_ARM64_CE=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_SIMD=y
 | 
				
			||||||
CONFIG_CRYPTO_ZSTD=y
 | 
					CONFIG_CRYPTO_ZSTD=y
 | 
				
			||||||
CONFIG_DCACHE_WORD_ACCESS=y
 | 
					CONFIG_DCACHE_WORD_ACCESS=y
 | 
				
			||||||
CONFIG_DEBUG_MISC=y
 | 
					CONFIG_DEBUG_MISC=y
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,6 +18,7 @@ CONFIG_ARCH_WANTS_NO_INSTR=y
 | 
				
			|||||||
CONFIG_ARM64=y
 | 
					CONFIG_ARM64=y
 | 
				
			||||||
CONFIG_ARM64_4K_PAGES=y
 | 
					CONFIG_ARM64_4K_PAGES=y
 | 
				
			||||||
# CONFIG_ARM64_CNP is not set
 | 
					# CONFIG_ARM64_CNP is not set
 | 
				
			||||||
 | 
					CONFIG_ARM64_CRYPTO=y
 | 
				
			||||||
CONFIG_ARM64_ERRATUM_843419=y
 | 
					CONFIG_ARM64_ERRATUM_843419=y
 | 
				
			||||||
CONFIG_ARM64_ERRATUM_845719=y
 | 
					CONFIG_ARM64_ERRATUM_845719=y
 | 
				
			||||||
CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y
 | 
					CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y
 | 
				
			||||||
@@ -107,9 +108,14 @@ CONFIG_CPU_FREQ_STAT=y
 | 
				
			|||||||
CONFIG_CPU_RMAP=y
 | 
					CONFIG_CPU_RMAP=y
 | 
				
			||||||
CONFIG_CPU_THERMAL=y
 | 
					CONFIG_CPU_THERMAL=y
 | 
				
			||||||
CONFIG_CRC16=y
 | 
					CONFIG_CRC16=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AES_ARM64=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AES_ARM64_CE=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
 | 
				
			||||||
CONFIG_CRYPTO_CMAC=y
 | 
					CONFIG_CRYPTO_CMAC=y
 | 
				
			||||||
CONFIG_CRYPTO_CRC32=y
 | 
					CONFIG_CRYPTO_CRC32=y
 | 
				
			||||||
CONFIG_CRYPTO_CRC32C=y
 | 
					CONFIG_CRYPTO_CRC32C=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_CRYPTD=y
 | 
				
			||||||
CONFIG_CRYPTO_DEFLATE=y
 | 
					CONFIG_CRYPTO_DEFLATE=y
 | 
				
			||||||
CONFIG_CRYPTO_DRBG=y
 | 
					CONFIG_CRYPTO_DRBG=y
 | 
				
			||||||
CONFIG_CRYPTO_DRBG_HMAC=y
 | 
					CONFIG_CRYPTO_DRBG_HMAC=y
 | 
				
			||||||
@@ -117,6 +123,7 @@ CONFIG_CRYPTO_DRBG_MENU=y
 | 
				
			|||||||
CONFIG_CRYPTO_ECB=y
 | 
					CONFIG_CRYPTO_ECB=y
 | 
				
			||||||
CONFIG_CRYPTO_ECC=y
 | 
					CONFIG_CRYPTO_ECC=y
 | 
				
			||||||
CONFIG_CRYPTO_ECDH=y
 | 
					CONFIG_CRYPTO_ECDH=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_GHASH_ARM64_CE=y
 | 
				
			||||||
CONFIG_CRYPTO_HASH_INFO=y
 | 
					CONFIG_CRYPTO_HASH_INFO=y
 | 
				
			||||||
CONFIG_CRYPTO_HMAC=y
 | 
					CONFIG_CRYPTO_HMAC=y
 | 
				
			||||||
CONFIG_CRYPTO_JITTERENTROPY=y
 | 
					CONFIG_CRYPTO_JITTERENTROPY=y
 | 
				
			||||||
@@ -126,7 +133,10 @@ CONFIG_CRYPTO_RNG=y
 | 
				
			|||||||
CONFIG_CRYPTO_RNG2=y
 | 
					CONFIG_CRYPTO_RNG2=y
 | 
				
			||||||
CONFIG_CRYPTO_RNG_DEFAULT=y
 | 
					CONFIG_CRYPTO_RNG_DEFAULT=y
 | 
				
			||||||
CONFIG_CRYPTO_SHA256=y
 | 
					CONFIG_CRYPTO_SHA256=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_SHA256_ARM64=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_SHA2_ARM64_CE=y
 | 
				
			||||||
CONFIG_CRYPTO_SHA512=y
 | 
					CONFIG_CRYPTO_SHA512=y
 | 
				
			||||||
 | 
					CONFIG_CRYPTO_SIMD=y
 | 
				
			||||||
CONFIG_CRYPTO_ZSTD=y
 | 
					CONFIG_CRYPTO_ZSTD=y
 | 
				
			||||||
CONFIG_DCACHE_WORD_ACCESS=y
 | 
					CONFIG_DCACHE_WORD_ACCESS=y
 | 
				
			||||||
CONFIG_DEBUG_MISC=y
 | 
					CONFIG_DEBUG_MISC=y
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user