aboutsummaryrefslogtreecommitdiff
path: root/core/drivers/crypto/caam/hal/common/hal_ctrl.c
diff options
context:
space:
mode:
authorCedric Neveux <cedric.neveux@nxp.com>2020-02-04 15:27:27 +0100
committerJérôme Forissier <jerome@forissier.org>2020-02-28 10:47:29 +0100
commit796ea6d867547350b371dfa64a0959f3ee5bc107 (patch)
treedc5bf967f831f22c01d334e95505143935b4b6b2 /core/drivers/crypto/caam/hal/common/hal_ctrl.c
parentf5a70e3efb80be4b9bff2c9c811ddc139058e05a (diff)
drivers: caam: implement NXP CAAM Driver - RSAHEADmaster
Add the NXP CAAM drivers: - Asymmetric RSA: - Encrypt/Decrypt - Sign/Verify - Mathematical operation XOR (mod N) Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Diffstat (limited to 'core/drivers/crypto/caam/hal/common/hal_ctrl.c')
-rw-r--r--core/drivers/crypto/caam/hal/common/hal_ctrl.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/core/drivers/crypto/caam/hal/common/hal_ctrl.c b/core/drivers/crypto/caam/hal/common/hal_ctrl.c
index 42e1fe71..cf94d08b 100644
--- a/core/drivers/crypto/caam/hal/common/hal_ctrl.c
+++ b/core/drivers/crypto/caam/hal/common/hal_ctrl.c
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: BSD-2-Clause
/*
- * Copyright 2018-2019 NXP
+ * Copyright 2018-2020 NXP
*
* Brief CAAM Controller Hardware Abstration Layer.
* Implementation of primitives to access HW.
@@ -38,3 +38,22 @@ uint8_t caam_hal_ctrl_hash_limit(vaddr_t baseaddr)
return UINT8_MAX;
}
+
+uint8_t caam_hal_ctrl_pknum(vaddr_t baseaddr)
+{
+ uint32_t val = 0;
+
+ val = io_caam_read32(baseaddr + CHANUM_LS);
+
+ return GET_CHANUM_LS_PKNUM(val);
+}
+
+uint8_t caam_hal_ctrl_era(vaddr_t baseaddr)
+{
+ uint32_t val = 0;
+
+ /* Read the number of instance */
+ val = io_caam_read32(baseaddr + CCBVID);
+
+ return GET_CCBVID_CAAM_ERA(val);
+}