Commit Graph

288 Commits (mbed-os-5.13.4)

Author SHA1 Message Date
Chris Snow d66621e85d remove CAN section form .ANY 2019-08-23 11:41:08 +01:00
Chris Snow 53153ffa08 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-23 11:41:08 +01:00
Mahesh Mahadevan 95b4c7c03c 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-23 11:37:41 +01:00
Mahesh Mahadevan 43dc222691 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-23 11:37:41 +01:00
Mahesh Mahadevan b31be14eed 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-23 11:37:41 +01:00
Chris Snow 4fc9190abf SPDX identifier and license amended 2019-08-23 11:37:41 +01:00
Chris Snow a803a4de79 LPC1768 Reset Reason implementation 2019-08-23 11:37:41 +01:00
Chris Snow ac8e3da7bf LPC1768 WDT implementation 2019-08-23 11:37:41 +01:00
Mahesh Mahadevan fb109576f5 MIMXRT1050_EVK: Add TRNG support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-23 11:37:41 +01:00
Mahesh Mahadevan ed8fc97388 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-23 11:37:41 +01:00
David Rauschenbach 378a7023c0 Define I²C related pin names for the L-Tek FF-LPC546XX target 2019-08-23 11:37:41 +01:00
Evelyne Donnaes 337c5b424f "Update secure binaries for LPC55S69_S (ARMC6)" 2019-07-26 15:58:04 +01:00
Mahesh Mahadevan ecb444b989 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-25 15:18:28 +01:00
Mahesh Mahadevan f23bb080d6 LPC54114: Fix compile warnings
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-25 15:18:27 +01:00
Mahesh Mahadevan e019d7a64f MCUXpresso: Update LPC SPI HAL driver
Add support for different slave selects

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-25 15:18:27 +01:00
Mahesh Mahadevan df8cf28084 MCUXpresso: Update the Analogin driver for LPC devices
1. Update the clock divider setting
2. ADC resolution is 12-bits, update the API return value
   to return 16-bit result
3. Update IOMUX setup

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-25 15:18:27 +01:00
Mahesh Mahadevan dc5ff9ecd6 LPC54114: Update the ADC SDK driver
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-25 15:18:27 +01:00
Mahesh Mahadevan 1ad10d72c7 LPC546XX: Update the ADC SDK driver
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-25 15:18:27 +01:00
Mahesh Mahadevan 1bbc2d770a LPC MCUXpresso: Remove extra I2C transaction on byte write
An extra start signal was observed on the bus which was
discovered by the FPGA test shield.
This is because the hardware sends out a transaction as soon
as a write to the START bit. Hence the write to the START
bit is delayed by using a flag.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-25 15:18:27 +01:00
Evelyne Donnaes 7db70d8452 "Update secure binaries for LPC55S69_S (ARMC6)" 2019-07-14 21:46:06 +01:00
Mahesh Mahadevan c0f2bab022 LPC546XX: Add pins to LPCXpresso restricted list
FPGA GPIO tests cannot be run on certain pins

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-11 11:41:30 +01:00
Mathias Brossard 19babe2178 LPC55S69: fix cosFactor data size in header file
The file 'fsl_powerquad_data.h' declares several dctXXX_cosFactor
arrays with sizes twice larger compared to the actual definitions in
'fsl_powerquad_data.c'.
2019-07-11 11:40:54 +01:00
Hugues Kamba 6576bbba93 bootloader: Fix LPC55S69 bootloader segmentation
As the build tool in mbed-os 5.13 cannot appropriately deal with a segmented
bootloader when combining it with an application, this commit adjusts the
size reserved for interrupts (via the linker file) to avoid a bootloader
segmentation due to an unpopulated ROM area.

The microcontroller has a total of 60 vector interrupts + 16 exception
handlers. The allocated ROM flash for interrupts should be (60 + 16) x word
size in bytes = 76 x 4 = 304 = 0x130.

This commit changes the interrupt reserved space from 0x140 to 0x130.
2019-07-11 11:40:53 +01:00
Maciej Bocianski 121f28da0f HAL I2C: adds missing DEVICE_I2C guards 2019-07-11 11:40:53 +01:00
adbridge 9098ea170e "Update secure binaries for LPC55S69_S (ARMC6)" 2019-05-29 20:48:28 +01:00
Martin Kojtal 3ea1c56124
Merge pull request #10147 from kjbracey-arm/atomic_bitwise
Assembler atomics
2019-05-13 14:18:05 +01:00
Wajahat Abbas fd0a2c7e29 C027 Fix for modemOn flag 2019-05-03 14:34:28 +05:00
Mahesh Mahadevan 39975b818d LPC55S69: Add support for UART hardware flow control
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-04-29 14:18:35 -05:00
Kevin Bracey 87396e0bf6 Assembler atomics
Reimplement atomic code in inline assembly. This can improve
optimisation, and avoids potential architectural problems with using
LDREX/STREX intrinsics.

API further extended:
* Bitwise operations (fetch_and/fetch_or/fetch_xor)
* fetch_add and fetch_sub (like incr/decr, but returning old value -
  aligning with C++11)
* compare_exchange_weak
* Explicit memory order specification
* Basic freestanding template overloads for C++

This gives our existing C implementation essentially all the functionality
needed by C++11.

An actual Atomic<T> template based upon these C functions could follow.
2019-04-26 13:12:35 +03:00
Martin Kojtal b6a2c7b63f
Merge pull request #10019 from deepikabhavnani/uarm_fix
uARM - Move heap region after IRAM1
2019-04-18 12:49:56 +01:00
Martin Kojtal 3ec9c190d0
Merge pull request #10314 from kjbracey-arm/rt1050_dcache
i.MX RT1050: Reactivate data cache
2019-04-18 09:49:13 +01:00
Martin Kojtal 93dc5514f2
Merge pull request #10334 from NXPmicro/MXRT1050_FixTestFailure
MXRT1050_EVK: Fixes test failure seen with ARM & IAR toolchain
2019-04-16 08:45:46 +01:00
Kevin Bracey b1ba4fe7ec LPC55S69: Cast to cope with const mismatch 2019-04-11 14:57:20 +03:00
Kevin Bracey c89c2809ea LPC55S69: Fix APB bridge security programming
Spotted in compiler warnings - code was trying to access a non-existent
second security control block, rather than access the settings for the
second APB bridge in the first and only security control block.
2019-04-11 14:49:54 +03:00
Deepika 36c7b2de86 uARM - Move heap region after IRAM1
ARM_LIB_HEAP start is aligned to IRAM1 end, hence should be placed next to
RW_IRAM1 i.e. no other region in between.
2019-04-09 12:01:01 -05:00
Mahesh Mahadevan 5f7f71e7e5 MXRT1050_EVK: Fixes test failure seen with IAR and ARM toolchains
Fixes test failure seen with tests-mbed_hal-stack_size_unification
under IAR and ARM toolchain

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-04-08 13:42:46 -05:00
Kevin Bracey 6fe50763f3 i.MX RT1050: Reactivate data cache
Since commit 12c6b1bd8, the i.MX RT1050 has effectively had its data
cache disabled, as the SDRAM was marked Shareable; for the Cortex-M7,
shareable memory is not cached.

This was done to make the Ethernet driver work without any cache
maintenance code. This commit adds cache maintenance and memory barriers
to the Ethernet driver, and removes the Shareable attribute from the
SDRAM, so the data cache is used again.

Cache code in the base fsl_enet.c driver has not been activated - the
bulk of it is in higher-level Read and Write calls that we're not using,
and there is one flawed invalidate in its initialisation. Instead
imx_emac.cpp takes full cache responsibility.

This commit also marks the SDRAM as read/write-allocate. As the
Cortex-M7 has its "Dynamic read allocate mode" to automatically switch
back to read-allocate in cases where write allocate is working poorly
(eg large memset), this should result in a performance boost with no
downside.

Activating write-allocate is also an attempt to provoke any flaws in
cache maintenance - the Ethernet transmit buffers for example will be
more likely to have a little data in the cache that needs cleaning.
2019-04-04 12:06:24 +03:00
Mahesh Mahadevan 1b9531d1af LPC55S69: Update Flash driver to set clock frequency
This is to ensure the flash access time is set correctly

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-04-01 12:10:24 -05:00
Michael Schwarcz a91f17e824 LPC targets: Compile us_ticker.c only if USTICKER defined 2019-03-26 09:52:18 +02:00
David Saada eb5cef84fd Add bootloader support for the LPC55S69 board
bla
2019-03-16 00:13:40 +02:00
Oren Cohen 2ea13e6149 "Update secure binaries for LPC55S69_S" 2019-03-14 17:03:06 +02:00
Michael Schwarcz dca3ebe9f6 LPC55S69_S: reduce ITS size to 32KB
- Reduce LPC55S69 secure side ITS from 64KB to 32KB
2019-03-14 15:49:44 +02:00
Michael Schwarcz 546e33df7b Update NS IAR icf file 2019-03-13 18:21:37 +02:00
Michael Schwarcz f6ab217892 Reduce 32KB from LPC55S69_S binary size 2019-03-13 18:21:37 +02:00
Alexander Zilberkant 661613c998 Rename psa_system_reset to mbed_psa_system_reset
add noreturn attributes
update lifecycle service to use psa/error.h
fix doxygen
2019-03-11 10:43:19 +02:00
Mahesh Mahadevan 862961ced5 Updated the binaries
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-03-08 07:33:49 -06:00
Mahesh Mahadevan 4a2dbba7a1 Reduce the number of flash operation related veneer table entries
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-03-08 07:33:48 -06:00
Michael Schwarcz 401580f364 LPC55S69: Change post-build hook to create HEX 2019-03-08 07:33:48 -06:00
Michael Schwarcz ebd9dc83f7 LPC55S69: Use find_secure_image in post-build and add prebuilt secure images 2019-03-08 07:33:48 -06:00
Mahesh Mahadevan 2e9bb17596 MCUXpresso: Update Analogin support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-03-08 07:28:59 -06:00