Commit Graph

250 Commits (10e0759372f1e04c8fcd182c382d31d7ca8534d4)

Author SHA1 Message Date
Arto Kinnunen ad3bb0dc72 Change file permissions from 755->644 2021-03-03 13:45:58 +02:00
Arto Kinnunen 7498683b4f Change file permissions from 755->644 2021-03-01 10:20:54 +02:00
Gavin Liu 59ad3ca7dc targets:evkbimxrt1050: Adjust the SEMC re-order rules
Update the BMCR0, BMCR1 registers to adjust the SEMC
re-order rules. This can improve the SDRAM stability
under multiple AXI masters system.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
2021-02-22 18:31:59 +02:00
Tim Wang 1ee4239253 targets:RT1050: Fix the flash erase and program issue for qspi nor flash.
Update the LUT to fix the winbond qspi flash erase issue.
Update the page program interface to fix the qspi flash program issue.

Signed-off-by: Tim Wang <tim.wang@nxp.com>
2021-02-22 18:31:59 +02:00
Tim Wang 9c3c3d2dcc targets:RT1050: Fix the low speed switch issue
Fix the low speed switch issue when using QSPI flash

Signed-off-by: Tim Wang <tim.wang@nxp.com>
2021-02-22 18:31:59 +02:00
timwang b14ddf69b7 targets:clock: Update the coreclock value
Update the coreclock value which will be used in middleware

Signed-off-by: timwang <tim.wang@nxp.com>
2021-02-22 18:31:59 +02:00
timwang 8aca242b70 targets: clock: change default core clock to 528M
change the clock config of the RT1050 to set the default core clock to
528M

Signed-off-by: timwang <tim.wang@nxp.com>
2021-02-22 18:31:58 +02:00
timwang 4bc62d9a13 targets:uart: Add uart_3 support
Add uart_3 support, which using GPIO_AD_B1_06 as TX pin, GPIO_AD_B1_07
as RX pin

Signed-off-by: timwang <tim.wang@nxp.com>
2021-02-22 18:31:58 +02:00
TimWang 1ec914c5db targets:lpspi: Update the lpspi driver and api
Change the lpspi default transfer delays to fix the data corruption
issue.

Add the loop and judgement to retry transfer when spi bus is busy.

Add the judgement statement to fix the hang issue.

Signed-off-by: TimWang <tim.wang@nxp.com>
2021-02-22 18:31:58 +02:00
Gavin Liu 436f5ca8e7 targets:MIMXRT1050: Add LPSPI4 support
Add LPSPI4 PIN configurations.

Signed-off-by: fred.li <fred.li@arm.com>
Signed-off-by: Gavin Liu <gang.liu@nxp.com>
2021-02-22 18:31:58 +02:00
Hugues Kamba 68b6e6ff96 Fix post build mechanism with unique CMake custom targets
The CMake custom target must be unique to avoid more than one
Mbed target adding the same. Only the CMake custom command added for the
Mbed target being built is run as the custom CMake target now includes
the Mbed target name.
2021-02-15 17:39:27 +00:00
Hugues Kamba deeaa7970f CMake: Add post build operation support
A CMake custom target, mbed-post-build, is added as a dependency of the
application CMake target if a Mbed target adds a CMake custom target
named mbed-post-build-bin. mbed-post-build-bin is added as a dependency
of mbed-post-build. mbed-post-build-bin depends on the application binary.
This is done so a CMake custom command that executes post-build can be added.

The Python scripts that implement the operations have been modified to add
CLI entry points so they can be called from CMake. Dependency on the old
tool has been removed on those scripts by passing them exactly what they
require instead of passing old tool Python objects. A consequence of that
was to slightly amend how the old tool calls some of those Python modules.

Support has only been added for Mbed targets that currently have a requirement
for post build operations. This includes: LPC1114, LPC1768, ARCH_PRO, LPC54114,
LPC546XX, FF_LPC546XX, CY8CKIT064B0S2_4343W, CYTFM_064B0S2_4343W, CYSBSYSKIT_01

The following targets are not supported as TFM support is not yet included:
ARM_MUSCA_B1, ARM_MUSCA_B1_NS, ARM_MUSCA_S1, ARM_MUSCA_S1_NS.
2021-02-11 17:04:41 +00:00
Hugues Kamba f6837ce82d CMake: Refactor NXP targets
Refactor all NXP targets to be CMake build system targets. This removes
the need for checking MBED_TARGET_LABELS repeatedly and allows us to be
more flexible in the way we include MBED_TARGET source in the build.

A side effect of this is it will allow us to support custom targets
without breaking the build for 'standard' targets, as we use CMake's
standard mechanism for adding build rules to the build system, rather
than implementing our own layer of logic to exclude files not needed for
the target being built. Using this approach, if an MBED_TARGET is not
linked to using target_link_libraries its source files will not be
added to the build. This means custom target source can be added to the
user's application CMakeLists.txt without polluting the build system
when trying to compile for a standard MBED_TARGET.
2021-02-10 21:36:39 +00:00
Hugues Kamba dd6c5b3ab0 NXP: Remove LPC55S69 CMake listing
Support for LPC55S69 had been removed without removing references in CMake.
2021-01-22 11:13:02 +00:00
Hugues Kamba 425b9a7311 NXP: Use armclang shebang in scatter files
The armclang shebang is required in the scatter file in order to build with CMake.
2021-01-22 11:11:42 +00:00
Hugues Kamba cf23ba5388 CMake: Add support for TARGET_MCUXpresso_MCUS targets
All TARGET_MCUXpresso_MCUS targets supported by Mbed OS
can now be built with CMake.
2020-12-10 11:29:08 +00:00
Hugues Kamba 07b6db2f0d TARGET_NXP: Remove support for LPC55S69
Mbed OS 6 dropped support for all LPC55S69 targets.
This commit removes all source files for those targets.
2020-11-18 15:01:20 +00:00
Harrison Mutai 4fad1112e5 Add SPDX license identifier to Arm files
Add license identifier to files which Arm owns the copyright to,
and contain either BSD-3 or Apache-2.0 licenses. This is to address
license errors raised by scancode analysis.
2020-10-15 10:47:27 +01:00
Harrison Mutai d1d6bf51b3 Add license notice to Arm copyrighted source files
Scancode found missing license notices in our source files. This commit
addresses those issues by adding an Apache-2.0 notice to source files
highlighted.
2020-10-15 10:46:35 +01:00
Martin Kojtal 468372e759
Merge pull request #13492 from talorion/fix-PwmOut-resets-after-suspend
Fix pwm out resets after suspend
2020-09-10 12:40:18 +01:00
Jaeden Amero 612b148fd4 stack: armc: Workaround config passing bug
Workaround a bug where the boot stack size configuration option is not
passed on to armlink, the Arm Compiler's linker. Prefer
MBED_CONF_TARGET_BOOT_STACK_SIZE if present, as this is what the
configuration system should provide. Fall back to MBED_BOOT_STACK_SIZE
if MBED_CONF_TARGET_BOOT_STACK_SIZE is not defined, as in the case of
buggy tools. If both MBED_CONF_TARGET_BOOT_STACK_SIZE and
MBED_BOOT_STACK_SIZE are not defined, then we fall back to a hard-coded
value provided by the linkerscript. See
https://github.com/ARMmbed/mbed-os/issues/13474 for more information.
2020-09-10 10:08:38 +01:00
Jaeden Amero 39e69d328d Use boot stack size from config system
To allow overriding of the boot stack size from the Mbed configuration
system, consistently use MBED_CONF_TARGET_BOOT_STACK_SIZE rather than
MBED_BOOT_STACK_SIZE.

Fixes #10319
2020-09-10 10:08:38 +01:00
talorion b03d80fd08 pwmout - fixed compile errors 2020-09-02 13:39:17 +02:00
talorion 9f83ce1cc7 pwmout - IMX - add read methods for period and pulsewidth 2020-09-02 13:39:15 +02:00
Mahesh Mahadevan 469ada5a11 MIMXRT1050_EVK: Fix to linker script for non-cached region
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2020-06-17 11:04:35 -05:00
Mahesh Mahadevan 81a1193012 MIMXRT1050_EVK: Add USB support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2020-06-17 11:04:35 -05:00
Martin Kojtal 8b777a571c TARGET_MIMXRT1050: fix vector table redef from cmsis
We need a linker script as it was. As files update in the future, should be compatible
with newer CMSIS core.
2020-05-13 13:24:56 +01:00
Martin Kojtal d04b4036a1 MIMXRT1050: undefine vector table symbol from CMSIS (not used) 2020-05-12 16:03:39 +01:00
Devaraj Ranganna 493a043528 psa: Remove PSA targets not supported in TF-M
Mbed OS depends on TF-M to implement PSA. Any targets that need to
provide PSA must be supported by TF-M. The following targets are removed
from Mbed OS as they don't yet have TF-M support. We can re-add these
targets to Mbed OS when they have TF-M support in the official upstream
TF-M repository hosted at trustedfirmware.org.

These PSA targets no longer have a PSA implementation and are removed:
- LPC55S69
- LPC55S69_NS
- LPC55S69_S
- NU_PFM_M2351_NS
- NU_PFM_M2351_S
- HANI_IOT

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-04-27 09:43:01 +01:00
Gavin Liu 288946a226 targets:MIMXRT1050: Update link file for application
For the application(firmware) booted by bootloader(OTA),
the image doesn't need the "flash_config" and "ivt" header.
So update the link file to support both kinds of application
(firmware) booted by bootROM and bootloader.

In default, the compilation will get the image with
"flash_config" and "ivt" header, for example the bootloader
compiling.

When compiling the OTA application image, please add the
line as below in the mbed_app.json file.

	"target.macros_add" : ["MBED_APP_COMPILE"]

This will remove the "flash_config" and "ivt" header in the
final image.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
2020-04-03 17:48:46 +08:00
Gavin Liu 1d1e69a4a2 targets:MIMXRT1050: Add QSPI Flash FLASHIAP support
Update the flash driver to support both Hyper Flash
and QSPI Flash.

In addition, the static function cannot be linked to
SRAM even defined by AT_QUICKACCESS_SECTION_CODE macro.
So remove all "static" modifier for the FLASHIAP
functions.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
2020-04-03 17:46:55 +08:00
Gavin Liu 2be0790c4a targets:TARGET_IMX: Fix the memset issue for FLASHIAP
The memset function from c library will be linked in flash
space, it's risk for FLASHIAP. So I wrote flexspi_memset
to replace the memset for IMX FLASHIAP, and put the function
into targets/.../TARGET_IMX/flash_api.c file. All IMX Soc
platforms can declare it as extern and use in their Soc
flexspi driver files.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
2020-04-03 17:41:34 +08:00
Gavin Liu f8a8401a13 targets:TARGET_IMX: Fix the flash init risk
The flash access may fail when implementing flash
initialization. So there is risk for interrupt handler
which linked in flash space.

Add the critical section to avoid the risk.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
2020-04-03 17:41:07 +08:00
Gavin Liu b53d40b269 targets:MIMXRT1050: Add QSPI Flash boot support
NXP MIMXRT1050 EVK can support Hyper Flash or QSPI Flash with
small hardware reworks. Modify the XIP file to support boot
from the two kinds of Flash device. The Hyper Flash should be
the default device and defined in tartgets.json with the macro
"HYPERFLASH_BOOT". To select the QSPI Flash, just remove the
macro with the below line in any overriding json file.
	"target.macros_remove" : ["HYPERFLASH_BOOT"]

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
2020-04-03 17:40:39 +08:00
Przemyslaw Stekiel 5aaf3b7479 K64F, LPC SPI driver: Fix style 2020-02-19 11:46:57 +01:00
Przemyslaw Stekiel c6a6984ab8 Allow NC for MISO or MOSI while initializing SPI
Static pinmap extension required to use pin_function() and pin_mode() functions instead of pinmap_pinout(). Unfortunatelly pin_function() does not allow passing NC pin.
Call pin_function() and pin_mode() only if MISO/MOSI pin is not NC.
2020-02-18 13:38:43 +01:00
Martin Kojtal a745525a54
Merge pull request #12342 from fkjagodzinski/fix-nxp-hal_fpga
LPC55S69: Fix UART & GPIO HAL to pass FPGA CI test shield tests
2020-02-11 11:03:22 +00:00
Przemyslaw Stekiel a0ff95bed5 LPC55S69: Add restricted GPIO pins for FPGA testing 2020-02-07 13:32:32 +01:00
Filip Jagodzinski 83b7b6d142 LPC55S69: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2020-02-07 13:32:32 +01:00
Martin Kojtal 2719090f93
Merge pull request #12364 from NXPmicro/MXRT1050_Deep_Sleep_Latency
MIMXRT1050: Update for deep sleep latency
2020-02-07 09:39:11 +00:00
Martin Kojtal 9e0642d518
Merge pull request #12359 from NXPmicro/MXRT1050_Bootloader_Support
MXRT1050: Add bootloader support
2020-02-06 08:10:45 +00:00
Mahesh Mahadevan 8b46e91a28 MIMXRT1050: Update for deep sleep latency
1. Do not disable and enable osillators during deep sleep
   entry and exit
2. Increase the deep sleep to pass tests

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2020-02-05 10:38:53 -06:00
Martin Kojtal 32675cc6ac
Merge pull request #11874 from fkjagodzinski/armc6_build-enable_lto_for_release
ARMC6: Add a build profile extension with the link-time optimizer enabled
2020-02-05 14:42:16 +00:00
Mahesh Mahadevan 013b651988 MXRT1050: Add bootloader support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2020-02-04 10:37:06 -06:00
Martin Kojtal b33573ed27
Merge pull request #12317 from NXPmicro/MXRT_FlashSupport
MXRT1050 Flash support
2020-02-04 15:25:22 +00:00
Maciej Bocianski 5fdacc4fb3 MIMXRT1050_EVt: keep hyperflash_config/image_vector_table symbols in LTO builds
Add a "used" attribute to hyperflash_config/image_vector_table to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST. )

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:29:56 +01:00
Mahesh Mahadevan fa3a72e716 MIMXRT1050: Reduce NOR size used by mbed-os
Reserve 4MB for mbed-os. The rest is used by storage driver

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2020-02-03 12:23:59 -06:00
Mahesh Mahadevan 42a90cc8b0 MXRT1050: Add support for Flash driver
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2020-02-03 12:23:59 -06:00
Pawel Zarembski 66d729af9a hani_iot: add SPDX identifier to all new ARM copyrighted files 2020-02-03 15:54:59 +01:00
Pawel Zarembski 4934e4f248 hani_iot: update licenses dates, remove unnecessary comment 2020-02-03 15:26:59 +01:00