Commit Graph

7969 Commits (682a5eab830437722ec1afa13fa67bf9bedcbdec)

Author SHA1 Message Date
Ladislas de Toldi 143176b8c4
STM32F4 - Add if defined check for USE_HAL_XXX_REGISTER_CALLBACKS 2021-02-25 16:06:48 +01:00
Martin Kojtal 1de9e3973d
Merge pull request #14344 from hugueskamba/hk_cmake_fix_psoc6_post_build
CMake: Fix PSOC6 post build script
2021-02-25 15:06:48 +00:00
Ladislas de Toldi e1aa00ee76
STM32F7 - Add if defined check for USE_HAL_XXX_REGISTER_CALLBACKS 2021-02-25 16:06:41 +01:00
Harrison Mutai 3c57f384b1 Remove IAR from list of supported toolchains 2021-02-25 14:23:19 +00:00
Harrison Mutai 23c4d6f4e2 Remove IAR from list of supported toolchains 2021-02-25 14:20:19 +00:00
Harrison Mutai de162d4087 Remove IAR from list of supported toolchains 2021-02-25 14:15:16 +00:00
Lingkai Dong 6ab4b1c1d4 "Updated secure binaries for [('ARM_MUSCA_S1', 'ARMCLANG')]" 2021-02-25 14:02:57 +00:00
Lingkai Dong 29f7f9f5d2 "Updated secure binaries for [('ARM_MUSCA_B1', 'ARMCLANG')]" 2021-02-25 14:02:57 +00:00
Lingkai Dong 63523bd0aa Remove _NS aliases for Musca B1/S1
In targets.json, ARM_MUSCA_B1 and ARM_MUSCA_S1 have alias target
names suffixed with `_NS`. They are identical to targets without
`_NS` and exist purely for compatibility with the old naming
convention we had. The CI builds them as separate targets and uses
extra resources.

As we are upgrading Musca targets to TF-M v1.2, it's time to clean
up the aliases.
2021-02-25 14:02:57 +00:00
Lingkai Dong 88a38c2750 Musca S1: include missing `cmsis_nvic.h`
The vector table needs to be copied from ROM to RAM, in order for us
to set IRQ handlers at run time. The address in RAM is defined by
`NVIC_RAM_VECTOR_ADDRESS` in `cmsis_nvic.h`, but its inclusion
was missing from Musca S1's `cmsis.h` and consequently the vector
table was not copied.

On most targets this results in a memory access error when we set
vectors. But Musca S1's ROM is in its MRAM (which can be accessed
like any RAMs), and this causes the ROM image to be modified
with no error/warning. On the next boot, MCUboot fails the image
integrity check.

This commit adds the missing include, in the same spirit as
01dd997d55.
2021-02-25 14:02:57 +00:00
Lingkai Dong ac4533a5bd Exclude Musca signing layouts from compilation
Files containing signing layouts are parsed by the post build
hook for signing purpose only.
2021-02-25 14:02:57 +00:00
Vikas Katariya 39e226bf6a Update target `ARM_MUSCA_S1` TF-M V1.2 binaries
* Remove the old `mcuboot.bin`
* Add `bl2.bin`
* Update TF-M secure binaries

GCC_ARM toolchain used.
2021-02-25 14:02:56 +00:00
Vikas Katariya c0721a95ca Update partition files for `ARM_MUSCA_S1`
* Partition files are synced with TF-M v1.2
* To have uniformity with TF-M v1.2, rename the following:
 ** image_macros_preprocessed_ns.c to `signing_layout_ns.c`
 ** image_macros_preprocessed_s.c to `signing_layout_s.c`
* `MCUBOOT_IMAGE_NUMBER` is set to 2 by default for TF-M v1.2,
therefore it is necessary that Mbed OS compiles the right macros
for when linking and using the partition files.
2021-02-25 14:02:56 +00:00
Vikas Katariya 65e2d45d99 Update target `ARM_MUSCA_B1` TF-M V1.2 binaries
* Remove the old `mcuboot.bin`
* Add `bl2.bin`
* Update TF-M secure binaries

GCC_ARM toolchain used.
2021-02-25 14:02:56 +00:00
Vikas Katariya 0ccf4db143 Update partition files for `ARM_MUSCA_B1`
* Partition files are synced with TF-M v1.2
* To have uniformity with TF-M v1.2, rename the following:
 ** image_macros_preprocessed_ns.c to `signing_layout_ns.c`
 ** image_macros_preprocessed_s.c to `signing_layout_s.c`
* `MCUBOOT_IMAGE_NUMBER` is set to 2 by default for TF-M v1.2,
therefore it is necessary that Mbed OS compiles the right macros
for when linking and using the partition files

** Workaround **
The `region_defs.h` has an explicit definition of `BL2`, even
though it is already defined in target.json for `ARM_MUSCA_B1`.
This is because of Mbed CLI 1, as it can't seem to use the right
macro when linking the files for Mbed OS application when using
the ARMCLANG toolchain.
2021-02-25 14:02:56 +00:00
Vikas Katariya b0da9d0cdf Switch to using `TARGET_TFM_LATEST`
Rather than maintaining a specific `TARGET_TFM_V1_x`, its better to use
more generic name `TARGET_TFM_LATEST` to avoid confusion on the latest
TFM version supported by Mbed OS

* Rename the folder from `TARGET_TFM_V1_1` to `TARGET_TFM_LATEST`
* Update the CmakeLists.txt
* Change the name of the MUSCA targets to maintain uniformity
with TF-M v1.2
* Update target.json for PSA_V8_M to use `TFM_LATEST`
2021-02-25 14:02:55 +00:00
Lingkai Dong c1d115e25b Fix conflicts in IAR configuration
In `targets.json`, the base target ARM_MPS2_Target does not have `iar`
in `supported_c_libs`. But its inherited targets have `IAR` in
`supported_toolchains`, causing configuration check to fail.
2021-02-25 12:03:26 +00:00
Harrison Mutai da4c528659 Add bare metal support to ARM FM targets
Modify scatter files to specify heap load region and add small libraries
to list of supported libraries in target.json.
2021-02-25 09:59:41 +00:00
Harrison Mutai fc00035c0f Add bare metal support to Toshiba targets
Modify scatter files to specify heap load region and add small libraries
to list of supported libraries in target.json.# Please enter the commit message for your changes. Lines starting
2021-02-25 09:29:28 +00:00
Harrison Mutai accc081c6e Add bare metal support to Nordic targets 2021-02-25 09:25:52 +00:00
Hugues Kamba 131e0fa2bf CMake: Fix PSOC6 post build script
Ensure the signing image ids are of type int.
2021-02-24 22:30:40 +00:00
Jost, Chris 96c31e15da fixed copy paste errors 2021-02-24 14:41:04 +01:00
jeromecoutant 0c7b4d7801 STM32: update readme with clock information 2021-02-24 11:15:17 +01:00
Jost, Chris cb032d2365 enable USBDEVICE for STM32L5 2021-02-24 10:21:54 +01:00
George Beckstein 0212fde7fb Fix astyle issues 2021-02-23 15:44:09 -05:00
Hugues Kamba 03914d1875 CMake: Remove references of APP_TARGET
This needs to be removed as there should not be a
name requirement for application CMake variable name.
Furthermore, in certain uses cases it prevents
successful builds for some Mbed targets. For instance
when building Greentea test applications for Mbed
targets that require post build operations as they do
not define APP_TARGET.
2021-02-23 17:24:31 +00:00
George Beckstein ec9d647c31 Add default app start and size limitations
This commit introduces a default application start address (`0x1000`) and size limitation (`0xDF000`) to accomodate the Nordic USB bootloader.

The bootloader consists of a master boot record in flash from address `0x0` to `0x1000` and the actual bootloader application starting at `0xE0000` to the end of flash (`0x100000`). The bootloader enables firmware updates over USB using nRF Connect for Desktop.

More documentation regarding the open bootloader can be found here: https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.0.2/ble_sdk_app_open_bootloader.html
2021-02-23 10:03:26 -05:00
George Beckstein 95415ebd47 Add option to use USBSerial for stdio console
This commit introduces an option, `ep-atlas.enable-usb-stdio-console`, that will retarget the Mbed stdio console handle to a USBSerial instance if enabled.

Please note that if your application uses USB, it will conflict with this option. You should disable this option and implement a composite USB device in your application if you require stdio over USB.

This option is disabled by default so it will not cause issues with existing user code.
2021-02-23 10:03:26 -05:00
George Beckstein 392d0f8f72 Configure internal regulators at startup
This commit introduces an implementation of the `subtarget_sdk_init` startup hook (called during `mbed_sdk_init`) that configures the internal regulators of the nRF52840.

The configuration sets up the internal regulator to output 3.3V. If this is not done, the default system voltage may be too low for the on-board indicator LEDs to conduct (ie: system voltage is lower than LED forward voltage).
2021-02-23 10:03:26 -05:00
George Beckstein 9e4d46262d Introduce `subtarget_sdk_init` startup hook.
The `mbed_sdk_init` startup hook is implemented at the NRF52-series level and so is unavailable for override. This commit adds an additional startup hook for NRF52 subtargets to perform any other startup initialization required.
2021-02-23 10:03:26 -05:00
Martin Kojtal 57a6fe3a8e
Merge pull request #14314 from hugueskamba/hk_cmake_fix_musca_ns
CMake: Fix ARM MUSCA NS targets build
2021-02-23 11:04:38 +00:00
Martin Kojtal 88a242f749
Merge pull request #14306 from hugueskamba/hk_cmake_create_cmsis_cortex_libs
CMake: Create CMSIS library targets to remove dependency on MBED_TARGET_LABELS
2021-02-23 08:36:49 +00:00
Martin Kojtal da51cb2185
Merge pull request #14318 from harmut01/example_build_errors
CMake: Fix path to STM32F0 GCC linker scripts
2021-02-23 08:36:27 +00:00
Martin Kojtal 7b6c7cc2ad
Merge pull request #14295 from 0xc0170/cmake-remove-iar
CMake remove IAR references in the tree
2021-02-22 20:10:40 +00:00
Martin Kojtal 7369b63769
Merge pull request #14300 from harmut01/baremetal_arm_ssg
Add bare metal support to ARM_MPS2_Target family of targets
2021-02-22 20:10:25 +00:00
Martin Kojtal 120b25f138
Merge pull request #14315 from hugueskamba/hk_cmake_fix_nuvonton_m261
NUVOTON: Remove CMake listing of M261 include directory that do not exist
2021-02-22 20:10:02 +00:00
Martin Kojtal 778f833108
Merge pull request #14316 from hugueskamba/hk_cmake_fix_max32625
MAX32625: Fix CMake build
2021-02-22 20:09:33 +00:00
Hugues Kamba a8b9d49cfa PSOC6: Fix post build script
Raise an exception in case of a failure to find an image to use
for the binary signature. This prevents the method from assuming
the image is always successfully retrieved and crash when
attempting to print a message
2021-02-22 17:14:35 +00: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
Martin Kojtal dbbdd0f077
Merge pull request #14309 from hugueskamba/hk_cmake_fix_stm32f091xc_gcc_arm
CMake: Fix STM32F091XC Mbed targets GCC_ARM build
2021-02-22 15:56:05 +00:00
Martin Kojtal 3bb8de6ea3
Merge pull request #14308 from hugueskamba/hk_cmake_create_flash_cmsis_algo
Create FLASH CMSIS ALGO target to remove dependency on MBED_TARGET_LABELS
2021-02-22 14:36:44 +00:00
Harrison Mutai 5899dd0bc7 Fix path to GCC linker scripts
The linux filesystem is case sensitive, this was causing our nightly build to
fail when attempting to find the script with its lower case name. The
name of the file has been kept the same as this seems to be STMs
convention.
2021-02-22 14:07:52 +00:00
Hugues Kamba 80c679cc27 MAX32625: Fix CMake build
* Correct board CMake target name to match board name
* Make MAX32625 depend on MAXIM CMake target to inherit its include dirs
* Correct path to linker files
2021-02-22 13:38:32 +00:00
Hugues Kamba 3eb5296996 NUVOTON: Remove CMake listing of M261 include directory that do not exist
Remove listing of include directory that do not exist
2021-02-22 12:53:17 +00:00
Hugues Kamba 0ce36ac5e2 CMake: Fix ARM MUSCA NS targets build
Add the missing CMake targets for NS Mbed boards.
2021-02-22 12:17:41 +00:00
Yong Cong Sin be05753a9b
Moved MCU_STM32F103xE below NUCLEO_F103RB 2021-02-20 18:30:09 +08:00
Yong Cong Sin d458f24680
Remove custom board from CMakeLists.txt 2021-02-20 18:27:38 +08:00
Hugues Kamba 11a445be95 CMake: Fix STM32F091XC Mbed targets GCC_ARM build
The linker file for the GCC_ARM toolchain was not
correctly listed.
2021-02-19 20:28:25 +00:00
Hugues Kamba 7d49d4bce1 Create FLASH CMSIS ALGO target to remove dependency on MBED_TARGET_LABELS
This goes towards eventually removing reliance on targets.json to specify
the requirements of Mbed targets.
2021-02-19 16:56:37 +00:00
Hugues Kamba a3a36ccb92 CMake: Fix some NUVOTON build
Correct source file listings for M251, M261.
Also remove unused input source files.
2021-02-19 16:48:32 +00:00
Hugues Kamba 2c3481297c CMake: Create CMSIS library targets to remove dependency on MBED_TARGET_LABELS
This goes towards eventually removing reliance on targets.json to specify
the requirements of Mbed targets.
2021-02-19 13:39:32 +00:00
Harrison Mutai 0000b37124 Fix indentation in RW_IRAM1 load region description 2021-02-19 10:09:25 +00:00
Yong Cong Sin d81f520073 Divide HSE by 2 if the external XTAL used is 16 MHz 2021-02-19 15:35:47 +08:00
Yong Cong Sin a36d006b7c Add STM32F103xE SOC support 2021-02-19 10:57:34 +08:00
Harrison Mutai 9f5f3ea855 Fix indentation in ER_IROM1 load region description 2021-02-18 14:47:36 +00:00
Harrison Mutai b31ce7a9c7 Refactor ARM MSP2 target scatter files for bare metal support 2021-02-18 14:44:46 +00:00
Harrison Mutai 0f233735af Add bare metal support to ARM_MPS2_Target family of targets 2021-02-18 09:34:16 +00:00
Harrison Mutai b265ae854e uARM: Remove dependencies from Freescale targets 2021-02-17 12:00:23 +00:00
Harrison Mutai 73883b55b4 Add bare metal support to freescale targets 2021-02-17 11:23:20 +00:00
Martin Kojtal 85c2d7a25c CMake: remove IAR references as they are not supported 2021-02-17 09:19:03 +00:00
Martin Kojtal 3894d73680
Merge pull request #14289 from hugueskamba/hk_cmake_refactor_cypress
CMake: Refactor Cypress targets
2021-02-16 13:43:35 +00: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 ea6955bd1c CMake: Refactor Cypress targets
Refactor all Cypress targets to be CMake buildsystem 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-15 17:20:23 +00:00
Martin Kojtal 8ba88427cd
Merge pull request #14284 from 0xc0170/cmake-refactor-arm-ssg
CMake Arm SSG: refactor CMake targets
2021-02-15 15:27:07 +00:00
Martin Kojtal 1dd411268b
Merge pull request #14030 from arduino/i2c_stm32_wrong_clock
STM32H7: Compute I2C timing according current I2C clock source
2021-02-15 14:38:11 +00:00
Robert Walton fd63d33521 CMake: Fix STM32G0 target 2021-02-15 11:16:49 +00:00
Robert Walton 91db89143e Fix FF1705_L151CC target 2021-02-15 11:06:43 +00:00
Robert Walton ed4027edf0 Fix STM32F103xB target 2021-02-15 11:06:43 +00:00
Robert Walton c82c897e2b Fix STM32F072xB target 2021-02-15 11:06:43 +00:00
Robert Walton f2f927ebac Fix NUCLEO_H743ZI2 target 2021-02-15 11:05:07 +00:00
Robert Walton f6302dc108 Fix NUCLEO_L496ZG_P target 2021-02-15 11:05:07 +00:00
Robert Walton 956a8790c1 Fix DISCO_L4R9I target 2021-02-15 11:05:07 +00:00
Martin Kojtal 4c581120c5
Merge pull request #14270 from 0xc0170/cmake-refactor-maxim
CMake Maxim: fix targets naming
2021-02-15 11:04:18 +00:00
Martin Kojtal fa62e80958
Merge pull request #14249 from jeromecoutant/PR_STM32WL_LORA
STM32WL : add LoRa support
2021-02-15 11:04:00 +00:00
Martin Kojtal 24c9d2458b
Merge pull request #14246 from 0xc0170/cmake-refactor-arm-fm
ARM FM: refactor CMake targets
2021-02-15 11:02:11 +00:00
Martin Kojtal 7647a2c623
Merge pull request #14244 from 0xc0170/cmake-refactor-analog-devices
Analog Devices: refactor CMake targets
2021-02-15 11:00:09 +00:00
Martin Kojtal 0adb917dab CMake Arm SSG: refactor CMake targets
Create CMake target per each Mbed OS target.
2021-02-15 10:39:30 +00:00
Martin Kojtal 34627b7d53
Merge pull request #14280 from hugueskamba/hk_cmake_refactor_wiced
CMake: Refactor WIO_EMW3166 support
2021-02-15 10:28:12 +00:00
Martin Kojtal 1516c57bf8 ARM FM CMake: fix CMakeLists names 2021-02-15 09:23:54 +00:00
Martin Kojtal a922ed18a5 Analog Devices: fix CMakeLists names 2021-02-15 09:17:50 +00:00
Martin Kojtal 94f3c7b89b Maxim CMake: fix sources for max32630fthr 2021-02-15 08:58:39 +00:00
Martin Kojtal c153880941
Merge pull request #14281 from harmut01/refactor-gigadevice
CMake: refactor GigaDevice targets
2021-02-15 08:48:12 +00:00
Martin Kojtal 5e094fe040
Merge pull request #14245 from jeromecoutant/PR_WL
STM32WL: I2C and ADC full support
2021-02-15 08:46:13 +00:00
Martin Kojtal 98659cfb78
Merge pull request #14282 from hugueskamba/hk_cmake_refactor_nuvoton
CMake: Refactor Nuvoton targets
2021-02-15 08:44:35 +00:00
Martin Kojtal 64d4a7a58a CMake Analog devices: fix linking to the main family target 2021-02-14 19:48:16 +00:00
Martin Kojtal 950baa2fe6
CMake fvp mps2: fix linking to arm-fm 2021-02-14 19:44:28 +00:00
Martin Kojtal 26d7b4d9d5
CMake Arm FM: fix linking libraries with arm-fm
Co-authored-by: Hugues Kamba-Mpiana <41612201+hugueskamba@users.noreply.github.com>
2021-02-14 19:43:39 +00:00
Martin Kojtal e6bd22d68d
Update targets/TARGET_GigaDevice/TARGET_GD32F4XX/CMakeLists.txt
Co-authored-by: Hugues Kamba-Mpiana <41612201+hugueskamba@users.noreply.github.com>
2021-02-14 19:30:02 +00:00
Martin Kojtal b446238441
CMake GigaDevice: fix exclude all for targets
Co-authored-by: Hugues Kamba-Mpiana <41612201+hugueskamba@users.noreply.github.com>
2021-02-14 19:28:06 +00:00
Martin Kojtal ff307188b7
Merge pull request #14277 from hugueskamba/hk_fix_apollo3_heap_stack_location
Apollo3: Fix run time error due to memory mapping
2021-02-14 19:24:43 +00:00
Martin Kojtal 3ef03538f2
Merge pull request #14276 from harmut01/refactor_samsung
CMake: refactor Samsung targets
2021-02-14 19:24:25 +00:00
Martin Kojtal 8321943ec8
Merge pull request #14235 from hugueskamba/hk_post_build_op
CMake: Add post build operation support
2021-02-14 19:23:19 +00:00
Martin Kojtal cbc6af518f
Apply suggestions from code review
Co-authored-by: Hugues Kamba-Mpiana <41612201+hugueskamba@users.noreply.github.com>
2021-02-14 19:21:14 +00:00