Commit Graph

326 Commits (mbed-os-5.15.6)

Author SHA1 Message Date
adbridge 9d0b365c3d "Update secure binaries for LPC55S69_S (ARMC6)" 2020-08-12 12:37:10 +01:00
adbridge 8a31c24fb7 "Update secure binaries for LPC55S69_S (ARMC6)" 2020-04-27 13:35:02 +01:00
Pawel Zarembski 2fe341f589 hani_iot: add SPDX identifier to all new ARM copyrighted files 2020-02-05 15:25:11 +00:00
Pawel Zarembski 9faf6618fc hani_iot: update licenses dates, remove unnecessary comment 2020-02-05 15:25:11 +00:00
Pawel Zarembski 01e1a2c805 hani_iot: add target files and update targets.json 2020-02-05 15:25:11 +00:00
toyowata ef939df734 Fix runtime crash by ARMC6 build 2020-02-05 14:40:24 +00:00
toyowata 95c3a8107a Fix USTICKER build error for LPC11U35_401 2020-02-05 14:40:24 +00:00
adbridge ebd27f08c3 "Update secure binaries for LPC55S69_S (ARMC6)" 2019-12-11 10:52:56 +00:00
Qinghao Shi dafa66b2a3 FIX: fix a bug introduced by static pinmap 2019-12-11 10:45:56 +00:00
adbridge 0a2e197067 "Update secure binaries for LPC55S69_S (ARMC6)" 2019-12-02 15:55:19 +00:00
Martin Kojtal f2d211b7c2
Merge pull request #11978 from hugueskamba/hk-fix-lpc55s69_ns-baremetal-compilation
LPC55S69_NS: Fix baremetal compilation error
2019-11-29 13:05:13 +01:00
Hugues Kamba 20f41a0540 LPC55S69_NS: Fix baremetal compilation error
As the `psa` library is not included in the baremetal profile, perform
a TFM system reset only if the `psa` library is included in
the build otherwise perform a normal CMSIS system reset.
2019-11-28 14:53:31 +00:00
Przemyslaw Stekiel b2dad08387 Change explicit pinmap to static pinmap 2019-11-28 08:32:12 +01:00
Przemyslaw Stekiel a83756504f LPC55S69_NS: Add explicit pinmap support 2019-11-28 08:32:05 +01:00
Martin Kojtal e4164bee51
Merge pull request #11775 from maciejbocianski/LPC55S69_fix_serial_set_flow_control
LPC55S69: fix serial_set_flow_control
2019-11-05 16:01:05 +01:00
Martin Kojtal eea83007be
Merge pull request #11203 from Tharazi97/Watchdog_lower_limit_timeout_test
Add watchdog lower limit timeout test
2019-10-31 14:25:52 +01:00
Maciej Bocianski 96a1c1ae8f LPC55S69: fix serial_set_flow_control 2019-10-30 14:15:09 +01:00
Martin Kojtal 8637069b36
Merge pull request #11698 from kjbracey-arm/armstack
Clean up ARM toolchain heap+stack setup in targets
2019-10-24 11:37:11 +02:00
Maciej Bocianski bb9197536d nxp LPC55S69: fix i2c pin mapping 2019-10-23 19:49:14 +02:00
Kevin Bracey fb6aa3ef4f Clean up ARM toolchain heap+stack setup in targets
ARM Compiler 6.13 testing revealed linker errors pointing out
conflicting use of `__user_setup_stackheap` and
`__user_initial_stackheap` in some targets. Remove the unwanted
`__user_initial_stackheap` from the targets - the setup is
centralised in the common platform code.

Looking into this, a number of other issues were highlighted

* Almost all targets had `__initial_sp` hardcoded in assembler,
  rather than getting it from the scatter file. This was behind
  issue #11313. Fix this generally.
* A few targets' `__initial_sp` values did not match the scatter
  file layout, in some cases meaning they were overlapping heap
  space. They now all use the area reserved in the scatter file.
  If any problems are seen, then there is an error in the
  scatter file.
* A number of targets were reserving unneeded space for heap and
  stack in their startup assembler, on top of the space reserved in
  the scatter file, so wasting a few K. A couple were using that
  space for the stack, rather than the space in the scatter file.

To clarify expected behaviour:

* Each scatter file contains empty regions `ARM_LIB_HEAP` and
  `ARM_LIB_STACK` to reserve space. `ARM_LIB_STACK` is sized
  by the macro `MBED_BOOT_STACK_SIZE`, which is set by the tools.
  `ARM_LIB_HEAP` is generally the space left over after static
  RAM and stack.
* The address of the end of `ARM_LIB_STACK` is written into the
  vector table and on reset the CPU sets MSP to that address.
* The common platform code in Mbed OS provides `__user_setup_stackheap`
  for the ARM library. The ARM library calls this during startup, and
  it calls `__mbed_user_setup_stackheap`.
* The default weak definition of `__mbed_user_setup_stackheap` does not
  modify SP, so we remain on the boot stack, and the heap is set to
  the region described by `ARM_LIB_HEAP`. If `ARM_LIB_HEAP` doesn't
  exist, then the heap is the space from the end of the used data in
  `RW_IRAM1` to the start of `ARM_LIB_STACK`.
* Targets can override `__mbed_user_setup_stackheap` if they want.
  Currently only Renesas (ARMv7-A class) devices do.
* If microlib is in use, then it doesn't call `__user_setup_stackheap`.
  Instead it just finds and uses `ARM_LIB_STACK` and `ARM_LIB_HEAP`
  itself.
2019-10-23 14:53:49 +03:00
int_szyk 632098de94 Add watchdog clock accuracy to NXP targets. 2019-09-30 08:10:24 +02:00
Mahesh Mahadevan 31da8ff09f MCUXpresso: Update the MXRT Serial driver for MBED_TICKLESS
We should not block in case the UART is busy transmitting. The
API has been updated to check the status of all UART's and return
1 in case any of them is busy transmitting.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-09-05 14:16:10 -05:00
Mahesh Mahadevan b30e294ba1 MCUXpresso: Change the MXRT deep sleep implementation
The code checks if any of the UART's is still transmitting.
If so then prevent from entering deepsleep

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-09-05 14:16:09 -05:00
Martin Kojtal e001216b55
Merge pull request #11315 from Patater/psa-crypto-api-1.0b3
Update Mbed OS for PSA Crypto API 1.0b3
2019-09-03 09:20:15 +02:00
Jaeden Amero a848cd6987 psa: Update LPC55S69 and MUSCA_A1 TF-M binaries
Rebuild the TF-M binaries for the LPC55S69 and MUSCA_A1 using the latest
service updates. This allows the boards to use the PSA Crypto API 1.0b3.
2019-09-02 17:11:00 +01:00
Martin Kojtal edc59ced82
Merge pull request #11215 from chrissnow/LPC1768_Scatter
LPC1768: Make use of the other 32K of RAM
2019-08-23 10:18:21 +02:00
Martin Kojtal 32e97e3371
Merge pull request #11267 from NXPmicro/LPC_Optimize_usticker
NXP MCUXpresso: optimize us_ticker for LPC platforms
2019-08-22 11:18:09 +02:00
Martin Kojtal edcde1ce8c
Merge pull request #10796 from NXPmicro/tickless
NXP: Enable MBED_TICKLESS on various NXP platforms
2019-08-22 10:30:14 +02:00
Mahesh Mahadevan c8ad24c8f5 NXP MCUXpresso: optimize us_ticker for LPC platforms
Provide new optimizations for us_ticker and wait_us.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-20 10:39:28 -05:00
Martin Kojtal 191f029f73
Merge pull request #11226 from chrissnow/LPC1768_WDT
LPC1768 Watchdog & Reset Reason
2019-08-20 10:22:42 +02:00
Martin Kojtal e2fef54898
Merge pull request #11188 from NXPmicro/MXRT_TRNG
MIMXRT1050_EVK: Add TRNG support
2019-08-20 09:50:43 +02:00
Martin Kojtal e3bfcbc2ff
Merge pull request #11142 from hugueskamba/hk-usb-targets-relocation
Relocate USB target specific code to root `targets` directory
2019-08-20 09:39:30 +02:00
Martin Kojtal e56f3199eb
Merge pull request #11127 from NXPmicro/Fix_LPC55S69_AnalogIn
Fix ANALOGIN support for LPC55S69
2019-08-20 09:33:40 +02:00
Chris Snow 82f4be0b4d SPDX identifier and license amended 2019-08-19 11:58:02 +01:00
Hugues Kamba 5cbc3e0497 Relocate USB target specific code to root `targets` directory
All target specific source and header files should be in the `targets`
directory located at the root of the Mbed OS repository.
2019-08-16 15:42:43 +01:00
Mahesh Mahadevan 43b4c0ab82 MIMXRT1050_EVK: Add TRNG support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-15 16:51:18 -05:00
Chris Snow 7e2c2a98dd LPC1768 Reset Reason implementation 2019-08-14 15:50:11 +01:00
Chris Snow 2fcafb9c93 LPC1768 WDT implementation 2019-08-14 13:42:04 +01:00
Chris Snow 9825b0d915 remove CAN section form .ANY 2019-08-13 20:18:52 +01:00
Chris Snow f801a61138 Make use of the other 32K of RAM if not used by libraries, least priority is IRAM1 to help maximise heap availability.
Most beneficial when LWIP is not in use.
2019-08-13 13:41:18 +01:00
Mahesh Mahadevan eaace297dc MCUXpresso: Provide an API to wait till TX complete
Wait till the data is flushed out of TX buffer

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-12 10:57:04 -05:00
Mahesh Mahadevan df64e32aa3 MCUXpresso: Update Kinetis Sleep implementation
1. Use the updated API's provided by the SMC driver
2. Wait till debug UART has finished transmitting data

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-12 10:56:52 -05:00
Mahesh Mahadevan 10bbbd1565 Fix ANALOGIN support for LPC55S69
1. Update to handle 12-bit resolution
2. Properly handle the pin configuration
3. Update the pin setup to handle the ADC B channel

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-09 09:18:04 -05:00
David Rauschenbach d19c881a56 Define I²C related pin names for the L-Tek FF-LPC546XX target 2019-07-27 07:18:15 -07:00
Seppo Takalo 5aff943a84
Merge pull request #11064 from NXPmicro/Update_LPC_GPIO_IRQ
MCUXpresso: Fix the LPC GPIO IRQ driver
2019-07-22 11:42:46 +03:00
Seppo Takalo 94f434227d
Merge pull request #11060 from NXPmicro/LPC_Update_SPI_Driver
MCUXpresso: Update LPC spi driver
2019-07-22 11:37:20 +03:00
Mahesh Mahadevan 34619e55a6 MCUXpresso: Fix the LPC GPIO IRQ driver
The IRQ disable was always disabling both rising
and falling edges of the interrupt thereby causing
failures in cases when one of the two should stay enabled.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-17 15:18:59 -05:00
Seppo Takalo 4cdde1d07f
Merge pull request #11052 from NXPmicro/Update_LPC546XX_ADC
Update MCUXpresso AnalogIn driver for LPC devices
2019-07-17 23:14:35 +03:00
Seppo Takalo 987533859a
Merge pull request #10104 from kjbracey-arm/sleep_api
Sleep rework, RTOS API for bare metal, wait deprecations
2019-07-17 14:37:53 +03:00
Mahesh Mahadevan e50583459f LPC54114: Fix compile warnings
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-16 12:29:32 -05:00