The cause of the pelion-enablement test failures for Nuvoton boards
is not caused by or related to the MPU so this patch re-enables the
MPU for these boards.
The cause of the pelion-enablement test failures for the
UBLOX_C030_U201 has been identified and corrected so this patch
re-enables the MPU for this board.
This reverts commit b217c5fe4d.
Turn off MPU for the UBLOX_C030 and MCU_M480 and all targets derived
from these. When the MPU is enabled on these platforms they do not
pass the pelion-enablement tests. Once the root cause is determined
and fixed the MPU can be re-enabled for these targets.
* Modify linker scripts to be compatible with bootloader and PSA
* Add memory protection
* Modify original post-build step to allow link with PSA binaries
* Config kvstore for ITS on FUTURE_SEQUANA_PSA
* Enable PSA-Crypto on PSoC6 with NVSeed
Connection status issue corrected. If the link layer status changes,
the connection status callback is now called correctly.
mbedtls headers from library are removed and the mbed-os one's are used.
When using UARTSerial sending data over the uart follows the sequence
below:
<-TX done ISR runs and sets a software interrupt to pending
<-Software interrupt fires:
-disables TX done interrupt
-calls UARTSerial TX handler which sends bytes until the uart
buffer filled (writeable returns false). Sending a byte
re-enables the TX done interrupt continuing the cycle
Due to this sequence, if the UARTSerial TX handler does not send a byte
then the transmit state machine mentioned above will get stuck with
the TX done interrupt disabled. The events causing this failure:
<-TX done ISR runs and sets a software interrupt to pending
<-Software interrupt fires:
-disables TX done interrupt
-calls UARTSerial TX handler:
-checks writeable which is true and sends a byte
<- interrupted by a higher priority interrrupt
<- TX done ISR runs, setting software interrupt to
pending again
-checks writeable which is true and sends a second byte
-Software interrupt finishes
<-Software interrupt fires:
-disables TX done interrupt
-calls UARTSerial TX handler:
-checks writeable which is false and DOES NOT SEND A BYTE
-Software interrupt finishes, the TX interrupt is still disabled
*-Byte gets sent but TX done ISR does not fire
This patch prevents the TX lockup by removing the code in the
software interrupt which disables the TX done interrupt. Disabling the
TX done interrupt at this point is not necessary so this code is safe
to remove.