You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by ut...@apache.org on 2021/02/17 13:45:23 UTC
[mynewt-core] 03/03: bsp: frdm-k82f: enable CRYPTO acceleration
This is an automated email from the ASF dual-hosted git repository.
utzig pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-core.git
commit 164ecd5a1aee5a3581c80656c03cfa3d3945f4b5
Author: Fabio Utzig <ut...@apache.org>
AuthorDate: Wed Feb 10 08:35:42 2021 -0300
bsp: frdm-k82f: enable CRYPTO acceleration
Signed-off-by: Fabio Utzig <ut...@apache.org>
---
hw/bsp/frdm-k82f/pkg.yml | 3 +++
hw/bsp/frdm-k82f/src/hal_bsp.c | 15 +++++++++++++++
hw/bsp/frdm-k82f/syscfg.yml | 2 ++
3 files changed, 20 insertions(+)
diff --git a/hw/bsp/frdm-k82f/pkg.yml b/hw/bsp/frdm-k82f/pkg.yml
index e8caa1e..56101c6 100644
--- a/hw/bsp/frdm-k82f/pkg.yml
+++ b/hw/bsp/frdm-k82f/pkg.yml
@@ -60,6 +60,9 @@ pkg.deps.UART_3:
pkg.deps.UART_4:
- "@apache-mynewt-core/hw/drivers/uart/uart_hal"
+pkg.deps.CRYPTO:
+ - "@apache-mynewt-core/hw/drivers/crypto/crypto_kinetis"
+
pkg.deps.ENC_FLASH_DEV:
- "@apache-mynewt-core/hw/drivers/flash/enc_flash/ef_crypto"
diff --git a/hw/bsp/frdm-k82f/src/hal_bsp.c b/hw/bsp/frdm-k82f/src/hal_bsp.c
index 4460a15..2837598 100644
--- a/hw/bsp/frdm-k82f/src/hal_bsp.c
+++ b/hw/bsp/frdm-k82f/src/hal_bsp.c
@@ -39,6 +39,10 @@
#include "trng/trng.h"
#include "trng_kinetis/trng_kinetis.h"
#endif
+#if MYNEWT_VAL(CRYPTO)
+#include "crypto/crypto.h"
+#include "crypto_kinetis/crypto_kinetis.h"
+#endif
#if MYNEWT_VAL(UART_0) || MYNEWT_VAL(UART_1) || MYNEWT_VAL(UART_2) || \
MYNEWT_VAL(UART_3) || MYNEWT_VAL(UART_4)
#include "uart/uart.h"
@@ -114,6 +118,10 @@ static struct hash_dev os_bsp_hash;
static struct trng_dev os_bsp_trng;
#endif
+#if MYNEWT_VAL(CRYPTO)
+static struct crypto_dev os_bsp_crypto;
+#endif
+
/*
* What memory to include in coredump.
*/
@@ -251,6 +259,13 @@ hal_bsp_init(void)
assert(rc == 0);
#endif
+#if MYNEWT_VAL(CRYPTO)
+ rc = os_dev_create(&os_bsp_crypto.dev, "crypto",
+ OS_DEV_INIT_KERNEL, OS_DEV_INIT_PRIO_DEFAULT,
+ kinetis_crypto_dev_init, NULL);
+ assert(rc == 0);
+#endif
+
#if MYNEWT_VAL(UART_0)
rc = os_dev_create((struct os_dev *) &os_bsp_uart0, "uart0",
OS_DEV_INIT_PRIMARY, 0, uart_hal_init, NULL);
diff --git a/hw/bsp/frdm-k82f/syscfg.yml b/hw/bsp/frdm-k82f/syscfg.yml
index a1f4b43..58130d6 100644
--- a/hw/bsp/frdm-k82f/syscfg.yml
+++ b/hw/bsp/frdm-k82f/syscfg.yml
@@ -78,3 +78,5 @@ syscfg.vals:
KINETIS_TRNG_USE_RNGA: 0
KINETIS_TRNG_USE_TRNG: 1
+ KINETIS_CRYPTO_USE_CAU: 0
+ KINETIS_CRYPTO_USE_LTC: 1