summaryrefslogtreecommitdiffstats
path: root/arch/mips/cavium-octeon/executive
diff options
context:
space:
mode:
authorAaro Koskinen <aaro.koskinen@iki.fi>2014-12-21 21:54:00 +0100
committerHerbert Xu <herbert@gondor.apana.org.au>2014-12-23 22:14:22 +0100
commit011f3c6cbb97859860e451f2a75767cd4c1ffc03 (patch)
tree6662ed497e584d9de3caec1447c13115c9bdc2b6 /arch/mips/cavium-octeon/executive
parentcrypto: octeon - add instruction definitions for MD5 (diff)
downloadlinux-011f3c6cbb97859860e451f2a75767cd4c1ffc03.tar.xz
linux-011f3c6cbb97859860e451f2a75767cd4c1ffc03.zip
MIPS: OCTEON: reintroduce crypto features check
Reintroduce run-time check for crypto features. The old one was deleted because it was unreliable, now decide the crypto availability on early boot when the model string is constructed. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'arch/mips/cavium-octeon/executive')
-rw-r--r--arch/mips/cavium-octeon/executive/octeon-model.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/mips/cavium-octeon/executive/octeon-model.c b/arch/mips/cavium-octeon/executive/octeon-model.c
index e15b049b3bd7..b2104bd9ab3b 100644
--- a/arch/mips/cavium-octeon/executive/octeon-model.c
+++ b/arch/mips/cavium-octeon/executive/octeon-model.c
@@ -27,6 +27,9 @@
#include <asm/octeon/octeon.h>
+enum octeon_feature_bits __octeon_feature_bits __read_mostly;
+EXPORT_SYMBOL_GPL(__octeon_feature_bits);
+
/**
* Read a byte of fuse data
* @byte_addr: address to read
@@ -103,6 +106,9 @@ static const char *__init octeon_model_get_string_buffer(uint32_t chip_id,
else
suffix = "NSP";
+ if (!fus_dat2.s.nocrypto)
+ __octeon_feature_bits |= OCTEON_HAS_CRYPTO;
+
/*
* Assume pass number is encoded using <5:3><2:0>. Exceptions
* will be fixed later.