wolfssl-examples/embedded/efr32xg25/wolfcrypt_test.slcp

190 lines
8.3 KiB
Plaintext

project_name: wolfcrypt_test
package: platform
quality: experimental
label: wolfSSL - wolfCrypt test and benchmark (EFR32xG25)
description: >
Runs the wolfCrypt algorithm self-test and benchmark on an EFR32xG25, with
crypto routed to the Secure Element through the wolfSSL crypto callback port
(WOLFSSL_SILABS_CRYPTOCB). Output goes to the kit VCOM.
category: Example|Platform
filter:
- name: "Device Type"
value: ["SoC"]
- name: "MCU"
value: ["32-bit MCU"]
- name: "Project Difficulty"
value: ["Advanced"]
source:
- path: app.c
- path: ../../../wolfssl/wolfcrypt/src/aes.c
- path: ../../../wolfssl/wolfcrypt/src/arc4.c
- path: ../../../wolfssl/wolfcrypt/src/ascon.c
- path: ../../../wolfssl/wolfcrypt/src/asn.c
- path: ../../../wolfssl/wolfcrypt/src/async.c
- path: ../../../wolfssl/wolfcrypt/src/blake2b.c
- path: ../../../wolfssl/wolfcrypt/src/blake2s.c
- path: ../../../wolfssl/wolfcrypt/src/camellia.c
- path: ../../../wolfssl/wolfcrypt/src/chacha.c
- path: ../../../wolfssl/wolfcrypt/src/chacha20_poly1305.c
- path: ../../../wolfssl/wolfcrypt/src/cmac.c
- path: ../../../wolfssl/wolfcrypt/src/coding.c
- path: ../../../wolfssl/wolfcrypt/src/compress.c
- path: ../../../wolfssl/wolfcrypt/src/cpuid.c
- path: ../../../wolfssl/wolfcrypt/src/cryptocb.c
- path: ../../../wolfssl/wolfcrypt/src/curve25519.c
- path: ../../../wolfssl/wolfcrypt/src/curve448.c
- path: ../../../wolfssl/wolfcrypt/src/des3.c
- path: ../../../wolfssl/wolfcrypt/src/dh.c
- path: ../../../wolfssl/wolfcrypt/src/dsa.c
- path: ../../../wolfssl/wolfcrypt/src/ecc.c
- path: ../../../wolfssl/wolfcrypt/src/eccsi.c
- path: ../../../wolfssl/wolfcrypt/src/ed25519.c
- path: ../../../wolfssl/wolfcrypt/src/ed448.c
- path: ../../../wolfssl/wolfcrypt/src/error.c
- path: ../../../wolfssl/wolfcrypt/src/falcon.c
- path: ../../../wolfssl/wolfcrypt/src/fe_448.c
- path: ../../../wolfssl/wolfcrypt/src/fe_low_mem.c
- path: ../../../wolfssl/wolfcrypt/src/fe_operations.c
- path: ../../../wolfssl/wolfcrypt/src/fips.c
- path: ../../../wolfssl/wolfcrypt/src/fips_test.c
- path: ../../../wolfssl/wolfcrypt/src/ge_448.c
- path: ../../../wolfssl/wolfcrypt/src/ge_low_mem.c
- path: ../../../wolfssl/wolfcrypt/src/ge_operations.c
- path: ../../../wolfssl/wolfcrypt/src/hash.c
- path: ../../../wolfssl/wolfcrypt/src/hmac.c
- path: ../../../wolfssl/wolfcrypt/src/hpke.c
- path: ../../../wolfssl/wolfcrypt/src/integer.c
- path: ../../../wolfssl/wolfcrypt/src/kdf.c
- path: ../../../wolfssl/wolfcrypt/src/logging.c
- path: ../../../wolfssl/wolfcrypt/src/md2.c
- path: ../../../wolfssl/wolfcrypt/src/md4.c
- path: ../../../wolfssl/wolfcrypt/src/md5.c
- path: ../../../wolfssl/wolfcrypt/src/memory.c
- path: ../../../wolfssl/wolfcrypt/src/pkcs12.c
- path: ../../../wolfssl/wolfcrypt/src/pkcs7.c
- path: ../../../wolfssl/wolfcrypt/src/poly1305.c
- path: ../../../wolfssl/wolfcrypt/src/puf.c
- path: ../../../wolfssl/wolfcrypt/src/pwdbased.c
- path: ../../../wolfssl/wolfcrypt/src/random.c
- path: ../../../wolfssl/wolfcrypt/src/rc2.c
- path: ../../../wolfssl/wolfcrypt/src/ripemd.c
- path: ../../../wolfssl/wolfcrypt/src/rng_bank.c
- path: ../../../wolfssl/wolfcrypt/src/rsa.c
- path: ../../../wolfssl/wolfcrypt/src/sakke.c
- path: ../../../wolfssl/wolfcrypt/src/selftest.c
- path: ../../../wolfssl/wolfcrypt/src/sha.c
- path: ../../../wolfssl/wolfcrypt/src/sha256.c
- path: ../../../wolfssl/wolfcrypt/src/sha3.c
- path: ../../../wolfssl/wolfcrypt/src/sha512.c
- path: ../../../wolfssl/wolfcrypt/src/signature.c
- path: ../../../wolfssl/wolfcrypt/src/siphash.c
- path: ../../../wolfssl/wolfcrypt/src/sm2.c
- path: ../../../wolfssl/wolfcrypt/src/sm3.c
- path: ../../../wolfssl/wolfcrypt/src/sm4.c
- path: ../../../wolfssl/wolfcrypt/src/sp_arm32.c
- path: ../../../wolfssl/wolfcrypt/src/sp_arm64.c
- path: ../../../wolfssl/wolfcrypt/src/sp_armthumb.c
- path: ../../../wolfssl/wolfcrypt/src/sp_c32.c
- path: ../../../wolfssl/wolfcrypt/src/sp_c64.c
- path: ../../../wolfssl/wolfcrypt/src/sp_cortexm.c
- path: ../../../wolfssl/wolfcrypt/src/sp_int.c
- path: ../../../wolfssl/wolfcrypt/src/sp_riscv64.c
- path: ../../../wolfssl/wolfcrypt/src/sp_sm2_arm32.c
- path: ../../../wolfssl/wolfcrypt/src/sp_sm2_arm64.c
- path: ../../../wolfssl/wolfcrypt/src/sp_sm2_armthumb.c
- path: ../../../wolfssl/wolfcrypt/src/sp_sm2_c32.c
- path: ../../../wolfssl/wolfcrypt/src/sp_sm2_c64.c
- path: ../../../wolfssl/wolfcrypt/src/sp_sm2_cortexm.c
- path: ../../../wolfssl/wolfcrypt/src/sp_sm2_riscv64.c
- path: ../../../wolfssl/wolfcrypt/src/sp_sm2_x86_64.c
- path: ../../../wolfssl/wolfcrypt/src/sp_x86_64.c
- path: ../../../wolfssl/wolfcrypt/src/srp.c
- path: ../../../wolfssl/wolfcrypt/src/tfm.c
- path: ../../../wolfssl/wolfcrypt/src/tsp.c
- path: ../../../wolfssl/wolfcrypt/src/wc_encrypt.c
- path: ../../../wolfssl/wolfcrypt/src/wc_frodokem.c
- path: ../../../wolfssl/wolfcrypt/src/wc_frodokem_mat.c
- path: ../../../wolfssl/wolfcrypt/src/wc_lms.c
- path: ../../../wolfssl/wolfcrypt/src/wc_lms_impl.c
- path: ../../../wolfssl/wolfcrypt/src/wc_mldsa.c
- path: ../../../wolfssl/wolfcrypt/src/wc_mlkem.c
- path: ../../../wolfssl/wolfcrypt/src/wc_mlkem_poly.c
- path: ../../../wolfssl/wolfcrypt/src/wc_pkcs11.c
- path: ../../../wolfssl/wolfcrypt/src/wc_port.c
- path: ../../../wolfssl/wolfcrypt/src/wc_she.c
- path: ../../../wolfssl/wolfcrypt/src/wc_slhdsa.c
- path: ../../../wolfssl/wolfcrypt/src/wc_xmss.c
- path: ../../../wolfssl/wolfcrypt/src/wc_xmss_impl.c
- path: ../../../wolfssl/wolfcrypt/src/wolfcrypt_first.c
- path: ../../../wolfssl/wolfcrypt/src/wolfcrypt_last.c
- path: ../../../wolfssl/wolfcrypt/src/wolfentropy.c
- path: ../../../wolfssl/wolfcrypt/src/wolfevent.c
- path: ../../../wolfssl/wolfcrypt/src/wolfmath.c
- path: ../../../wolfssl/src/internal.c
- path: ../../../wolfssl/src/keys.c
- path: ../../../wolfssl/src/ssl.c
- path: ../../../wolfssl/src/tls.c
- path: ../../../wolfssl/src/tls13.c
- path: ../../../wolfssl/src/wolfio.c
- path: tls13_test.c
- path: ../../../wolfssl/wolfcrypt/src/port/arm/thumb2-aes-asm_c.c
- path: ../../../wolfssl/wolfcrypt/src/port/arm/thumb2-sha256-asm_c.c
- path: ../../../wolfssl/wolfcrypt/src/port/arm/thumb2-sha512-asm_c.c
- path: ../../../wolfssl/wolfcrypt/src/port/arm/thumb2-chacha-asm_c.c
- path: ../../../wolfssl/wolfcrypt/src/port/arm/thumb2-poly1305-asm_c.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_aes.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_cb_cipher.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_cb_cmac.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_cb_hash.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_cb_kdf.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_cb_pk.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_cb_rng.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_cryptocb.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_ecc.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_hash.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_key.c
- path: ../../../wolfssl/wolfcrypt/src/port/silabs/silabs_random.c
- path: ../../../wolfssl/wolfcrypt/test/test.c
- path: ../../../wolfssl/wolfcrypt/benchmark/benchmark.c
include:
- path: .
file_list:
- path: user_settings.h
- path: ../../../wolfssl
file_list:
- path: wolfssl/wolfcrypt/settings.h
readme:
- path: README.md
component:
- id: se_manager
- id: sl_main
- id: device_init
- id: clock_manager
- id: printf
- id: iostream_retarget_stdio
- id: iostream_recommended_stream
- id: sleeptimer
- id: sl_string
- id: status_string
requires:
- name: device_has_semailbox
configuration:
- name: SL_STATUS_STRING_ENABLE_BLUETOOTH
value: 0
- name: SL_STATUS_STRING_ENABLE_WIFI
value: 0
- name: SL_BOARD_ENABLE_VCOM
value: 1
# wolfcrypt_test exercises deep call chains (ECC, RSA, ASN.1). The part has
# 512 KB of RAM and the app uses about 2 KB of static data, so spend some of it
# on stack rather than risk an overflow mid-test.
- name: SL_STACK_SIZE
value: 32768
- name: SL_IOSTREAM_USART_VCOM_FLOW_CONTROL_TYPE
value: usartHwFlowControlNone
define:
- name: WOLFSSL_USER_SETTINGS
toolchain_settings:
- option: optimize
value: speed