Commit Graph

18030 Commits (9920e63d98b1a870cb15b067cf22fd42a6a94265)

Author SHA1 Message Date
Bartek Szatkowski 1752803626 CMSIS/RTX: Fix using FALSE/TRUE with preprocesor 2018-05-14 12:18:21 +01:00
Bartek Szatkowski a1fb51c283 RTX5: uVisor: Remove static from svcRtxKernelUnlock/Lock to support uVisor 2018-05-14 12:18:21 +01:00
Jaeden Amero 2f7a841e0e RTX5: uVisor: Defer to uVisor for SVCall priority
Only set the SVCall priority if uVisor is not present. If uVisor is
present, keep using whatever priorities it has already set up.
2018-05-14 12:18:21 +01:00
Jaeden Amero 32d04a08d0 RTX5: uVisor: Add OsEventObserver
Add the OsEventObserver mechanism. A client interested in receiving
notifications on certain OS events can register to receive notifications
with osRegisterForOsEvents. This is useful for clients like the secure
memory allocator, which observes thread switching events in order to
swap in and out different memory allocator objects.
2018-05-14 12:18:21 +01:00
Jaeden Amero 86b91beeca RTX5: uVisor: Extend thread control block with context
OsEventObserver objects expect a context to be maintained per thread on
their behalf. Add this context to the thread control block and extend
the thread creation functions with the ability to supply a context.
2018-05-14 12:18:21 +01:00
Jaeden Amero c250369803 RTX5: uVisor: Use OsEventObserver 2018-05-14 12:18:21 +01:00
Jaeden Amero 73a957997f RTX5: uVisor: Switch threads very carefully
uVisor doesn't set the PSP of the target thread. The RTOS sets the PSP
of the target thread from the target thread's TCB. However, when
interrupts of higher priority than PendSV happen between the call to
uVisor to switch boxes, and the RTOS setting PSP, the uVisor vIRQ
interrupt handler will attempt to use an invalid PSP (the PSP from
before the box and thread switch). This leads to a crash. Make box and
thread switching atomic by disabling interrupts immediately before the
box switching until immediately after the new PSP is set.
2018-05-14 12:18:21 +01:00
Jaeden Amero cb2b91cac7 CMSIS/RTX: uVisor: Import v0.30.0 2018-05-14 12:18:21 +01:00
Bartek Szatkowski 3f1ea4b9ee CMSIS/RTX: Update idle handler and SysTick ops 2018-05-14 12:18:21 +01:00
Bartek Szatkowski 07aad3c862 CMSIS/RTX: Adapt Mbed OS to CMSIS/RTX device support scheme 2018-05-14 12:18:21 +01:00
deepikabhavnani 287121ffdc CMSIS/RTX: Pre-processor defines used for assembly
CMSIS repo does not support pre-processor defines, hence multiple assembly
files are added for secure/non-secure and floating point tools.

Mbed OS tools support assembly file pre-processing, but the build system
does not support multiple assembly files for each target, hence updating
the assembly files.
2018-05-14 12:18:20 +01:00
Bartek Szatkowski b88254809e CMSIS/RTX: Allow overwriting mutex ops for ARMC 2018-05-14 12:18:20 +01:00
Bartek Szatkowski cc2e0517e1 CMSIS/RTX: Patch RTX so irq_cm4f.s files work with no FPU targets 2018-05-14 12:18:20 +01:00
Bartek Szatkowski 4360b7bbf8 CMSIS/RTX: Patch RTX4 to preserve osThreadDef compatibility
mbed OS used older RTX4 version and with osThreadDef accepting only 3
parameters, to preserve compatibility we hardcode the 'instances'
parameter to 1.

(cherry picked from commit 428acae1b2ac15c3ad523e8d40755a9301220822)
2018-05-14 12:18:20 +01:00
Bartek Szatkowski 8afbd66763 [CMSIS_5]: Updated to 49ac527a 2018-05-14 12:18:20 +01:00
Bartek Szatkowski ac9276499f Add low power timer fallback for platforms without RTC
Low power timer will be used as RTC for platforms that don't have HW RTC
capabilities.
2018-05-14 12:07:59 +01:00
Yossi Levy 789eb04617 Changed trng loop condition 2018-05-14 14:07:57 +03:00
Yossi Levy 73d1c8df93 Fix of error macros 2018-05-14 13:52:20 +03:00
Qinghao Shi d48d3aff2b fix a bug in greentea-client
reset "LastChar" after "tok_close" received
fix the bug where greentea-client require a character input between K-V pairs
2018-05-14 11:41:14 +01:00
Qinghao Shi 953a735129 FastModels: enable FVP_MPS2 targets for mbed os
add ARM_FM top level category
add second level parent FVP_MPS2 inherits ARM_FM
add each target ( M0 M0P M3 M4 M7 ) inherits FVP_MPS2
2018-05-14 11:40:21 +01:00
Hasnain Virk d270105fa8 LoRaWAN: Wrong type of message check
In the reception data path, we needed to check the MCPS CONFIRMATION type
not the MCPS INDICATION type. Indication message type is for downlink message type
which can be UNCONFIRMED even if we have sent a CONFIRMED one, e.g., an ACK.
2018-05-14 13:36:38 +03:00
Qinghao Shi 76dc715a0e FastModels: add FVP_MPS2_M7 target support
add cmsis drivers and toolchain scripts for FVP_MPS2_M7
2018-05-14 11:34:50 +01:00
Qinghao Shi 1bf59cd54d FastModels: add FVP_MPS2_M0P target support
add cmsis drivers and toolchain scripts for FVP_MPS2_M0P
2018-05-14 11:34:23 +01:00
Qinghao Shi 67abec3998 FastModels: add FVP_MPS2_M0 target support
add cmsis drivers and toolchain scripts for FVP_MPS2_M0
2018-05-14 11:33:57 +01:00
Qinghao Shi ce2c21a1f4 FastModels: add FVP_MPS2_M4 target support
add cmsis drivers and toolchain scripts for FVP_MPS2_M4
2018-05-14 11:33:31 +01:00
Qinghao Shi 2e4a023489 FastModels: add FVP_MPS2_M3 target support
add cmsis drivers and toolchain scripts for FVP_MPS2_M3
2018-05-14 11:32:52 +01:00
Qinghao Shi 2c88a8314a FastModels: add a new parent platform ARM_FM
create a new platform folder TARGET_ARM_FM
add general drivers files for FVP_MPS2
2018-05-14 11:30:34 +01:00
Ron Eldor adbfdc1149 Remove SW fallback for CCM
Remove SW fallback for CCM mode, and return
`MBEDTLS_ERR_AES_FEATURE_UNAVAILABLE` when trying to set a key
which is not 128 bit size.
2018-05-14 13:15:57 +03:00
Ron Eldor ccaef16f6a Remove AES HW acceleration
Remove AES HW acceleration, as it is targeted future version
2018-05-14 13:15:57 +03:00
Ron Eldor 09d0d49efd Remove extra `mbedtls_zeroize` call
REmove additional unneded call to `mbedtls_zeroize()` which was added after rebase
2018-05-14 13:15:57 +03:00
Ron Eldor 069c5964ae Fix typo in Readme
Fix typo `DEBICE_CRYPTOCELL ` - > `DEVICE_CRYPTOCELL`
2018-05-14 13:15:57 +03:00
Ron Eldor 8f44cdff5d Resolve issues raised after rebasing
Remove `cc_rand.h` and duplicate check in `mbedtls_ecdsa_sign()`,
that were inserted after rebasing.
2018-05-14 13:15:57 +03:00
Ron Eldor 2b2aa0f94d Rephrase meaning of `MBEDTLS_CONFIG_HW_SUPPORT`
Rephrase the label, to make it more clearer.
2018-05-14 13:15:57 +03:00
Amanda Butler e68815e02b Copy edit changes to Readme.md
Copy edit changes, mostly for active voice and consistent tense.
2018-05-14 13:15:57 +03:00
Ron Eldor f07ff36f47 Rephrase explanation on `cc_platform_setup()`
Rephrase the explanation on `cc_platform_setup()`, since previous
explanation wasn't coherent.
2018-05-14 13:15:57 +03:00
Ron Eldor 55e7690593 Refactor Readme after comment from Tech Writer
Rephrase usage guideline on `objects.h` and explain usage of every label
in `targets.json`
2018-05-14 13:15:57 +03:00
Amanda Butler de2e4875fd Copy edit Readme.md
Copy edit file, mostly for minor grammar nits.
2018-05-14 13:15:57 +03:00
Ron Eldor 7cdfd91bf8 Add guidelines for porting CC310 on Mbed OS
Add guidelines for porting CC310 on a new platform
2018-05-14 13:15:57 +03:00
Ron Eldor 5e8e7361b0 Remove driver intialization from boot code
Remove Cryptocell driver initialization, which was accidently returned
in rebase.
2018-05-14 13:15:57 +03:00
Ron Eldor 245977f3c4 Rename libraries to pass CI library name check
Rename the CC libraries, with additional prefix "lib*".
Fixes CI failure
2018-05-14 13:15:57 +03:00
Ron Eldor 39973c8a8e Move trng code from target_nrf5 to target_nrf5x
After rebase, the build target NRF52840_DK is using TARGET_NRF5x,
instead of TARGET_NRF5. Moved Cryptocell TRNG related code from
`targets/TARGET_NORDIC/TARGET_NRF5/` to `targets/TARGET_NORDIC/TARGET_NRF5x/`
2018-05-14 13:15:57 +03:00
Ron Eldor ca844fd47a port CC to IAR
1. Add the compiled CC libraries for IAR toolchain
2. modify `ssi_pal_compiler.h` to support IAR
2018-05-14 13:15:57 +03:00
Ron Eldor 56df468a54 Alternative ECDSA and ECDH support
Add support for Alternative ECDSA and ECDH, on the higher level,
over CC310. Note that CC generates ECC keys according to FIPS 186,
while mbed TLS generates according to RFC 6979 and RFC 4754,
which causes test vectors for curve p521 to fail
2018-05-14 13:15:57 +03:00
Ron Eldor 19e2adf98d HW Accelerated SHA1 and SHA256
Add Poritng for Sha1 and SHA256 over Cryptocell
2018-05-14 13:15:57 +03:00
Ron Eldor fdf5587e29 Add CCM alternative implementation
Add CCM HW accelerated alternative implementation
2018-05-14 13:15:57 +03:00
Ron Eldor b31aa03be9 Add the platfrom setup \ terminate support
Add support for Platfrom setup and termination for Cryptocell on Nrf52840
2018-05-14 13:15:57 +03:00
Ron Eldor 340f22e3cd Add support for CC trng
add support for HW entropy source
2018-05-14 13:15:27 +03:00
Ron Eldor 75087469f7 Add the Cryptocell library
Add the latest cryptocell library, and add support for CC310 lirary
on latest Mbed OS code
2018-05-14 13:15:27 +03:00
paul-szczepanek-arm 579cb5e222 avoid setting flags twice 2018-05-14 10:26:44 +01:00
paul-szczepanek-arm f4f3a3c697 store ltk and csrk but not irk sent status
and missing asserts
2018-05-14 09:52:49 +01:00