Commit Graph

8481 Commits (add_led_button_target_config)

Author SHA1 Message Date
Rajkumar Kanagaraj e34cfba784 STM: Add DEVICE_LED and DEVICE_BUTTON guard on #define of LEDx and BUTTONx pin mapping 2021-09-23 17:13:59 +01:00
Rajkumar Kanagaraj 24c2faf623 NXP: Add DEVICE_LED and DEVICE_BUTTON guard on #define of LEDx and BUTTONx pin mapping 2021-09-23 17:13:59 +01:00
Rajkumar Kanagaraj fddd23494e Nuvoton: Add DEVICE_LED and DEVICE_BUTTON guard on #define of LEDx and BUTTONx pin mapping 2021-09-23 17:14:16 +01:00
Rajkumar Kanagaraj 8e42e2895d Freescale: Add DEVICE_LED and DEVICE_BUTTON guard on #define of LEDx and BUTTONx pin mapping 2021-09-23 17:14:08 +01:00
Rajkumar Kanagaraj 0fab221156 Cypress: Add DEVICE_LED and DEVICE_BUTTON guard on #define of LEDx and BUTTONx pin mapping 2021-09-23 17:13:59 +01:00
Rajkumar Kanagaraj e0cf826493 Add LED and BUTTON config in targets.json
Today no way to identify device has LED and BUTTON at CMake configuration
time as those macros are "#define" in the "pin_names" header file of
the particular target but the problem is pin_names generic greentea
test skip or includes the test based on defines LEDx, BUTTIONx,
hence introducing the LED and BUTTON config which is added under
"device_has_add" of LED and BUTTON supported target.
CLI1 and CLI2 generate DEVICE_LED (all LED define guard in this
in pin_names.h) and DEVICE_BUTTON (all the button define guard with this
in pin_names.h) macros which can be used in pin_name generic greentea test CMake.
2021-09-23 16:54:24 +01:00
Chun-Chieh Li bbc5ad9505 M2354: Fix TF-M 1.4
1.  In TF-M, fix NSPE interrupt-disabled NSC call broken. Check:
    https://developer.trustedfirmware.org/T966
2.  In TF-M, enable mcuboot log enabled forcibly. This is to help check firmware update process.
3.  Update readme and script
2021-09-17 13:44:58 +08:00
Robert Walton a43103faac TFM: MUSCA: Import partition maps from upstream
Import the latest partition headers from upstream. We no longer need to
patch the headers to define the BL2 macro as we now define it in the
scatter files for the MUSCA targets.
2021-09-14 17:32:42 +01:00
Robert Walton 33e57ee577 TFM: Remove BL2 macro workaround for mbed-cli1/ARMClang
We worked around an issue with mbed-cli1 not recognising the BL2 macro
from targets.json by adding patched versions of region_defs.h and
flash_layout.h for ARM_MUSCA targets. In the patched headers we defined
the BL2 macro to ensure it can be picked up by the ARM scatter files
that include the headers.

The current solution is not robust, because it means that the
aforementioned headers easily become out of date. A workaround of
defining the macros in the scatter files which need them was suggested
in https://github.com/ARMmbed/mbed-os/issues/14762

This commit applies the suggested changes to the ARM_MUSCA scatter
files.
2021-09-14 17:32:42 +01:00
Robert Walton aeee26019e targets: ARM_MUSCA: Update tfm_target_names
The directory structure upstream has changed. Now ARM_MUSCA board
support has been moved under an "arm" subdirectory. Update targets.json
with the new locations.
2021-09-14 17:32:42 +01:00
Robert Walton 56ffd54dd4 tfm: Move tfm_ns_interface.c
tfm_ns_interface.c is intended to be overriden by clients to support
different targets. We copy this file from upstream into the mbed-os
platform library. We also have a specific "strong" overridden version
for the NU_M2354 target, which is located in its target library.
Previously the implementations in the platform library were decorated
with __attribute__(weak), and we provided a strong definition for the
NU_M2354 target. This worked fine because of weak linking, the linker
will pick the first "strong" definition and use that, avoiding any ODR
violations. However, upstream have removed __attribute__(weak) from the
function definitions, which caused multiply defined symbol errors when
trying to build the NU_M2354 target.

To work around the above issue, we remove the common definition in the
platform library; instead we copy the file to the Musca B1 and Musca S1
target libaries. This means the appropriate tfm_ns_interface.c is only
included in the build when compiling for the specific target which uses
it.
2021-09-14 17:32:42 +01:00
Robert Walton 3d17e1646c "Update secure binaries for [('NU_M2354', 'GNUARM')]" 2021-09-14 17:32:42 +01:00
Robert Walton d11bac087c "Update secure binaries for [('ARM_MUSCA_S1', 'ARMCLANG')]" 2021-09-14 17:32:42 +01:00
Robert Walton f28a6eab4f "Update secure binaries for [('ARM_MUSCA_B1', 'ARMCLANG')]" 2021-09-14 17:32:42 +01:00
Jaeden Amero 756830e776
Merge pull request #14989 from LDong-Arm/sfdp_sector_maps_multi
SFDP: Add support for multiple configurations and sector maps
2021-09-13 10:09:27 +01:00
Lingkai Dong 9ade440860 CYW9P62S1_43012EVB_01: Enable QSPI and QSPIF
QSPIF was disabled on CYW9P62S1_43012EVB_01 because its S25FS512S
flash chip has multiple configurations but our SFDP parser did not
support this scenario. Now having added support for this, we can
enable QSPIF (the component label for QSPIFBlockDevice) and QSPI
(the label for Quad-SPI communication).
2021-09-10 11:40:01 +01:00
Jerome Coutant 4ef3b6cc9c STM32U5: README update 2021-09-10 11:16:17 +02:00
Jerome Coutant 90510bb401 STM32U5: targets.json 2021-09-10 11:16:17 +02:00
Jerome Coutant 84959256b7 STM32U5 : B_U585I_IOT02A introduction 2021-09-10 11:16:17 +02:00
Jerome Coutant 8114954054 STM32U5 : NUCLEO_U575ZI_Q introduction 2021-09-10 11:16:17 +02:00
Jerome Coutant 724c378c42 STM32U5 : STM32U5xxxxx sub-families 2021-09-10 11:16:16 +02:00
Jerome Coutant f45b1890aa STM32U5 specific driver files 2021-09-10 11:16:16 +02:00
Jerome Coutant e2ca71d1bf STM32U5: generic STM32 driver files update 2021-09-10 11:16:16 +02:00
Jerome Coutant 69c7cb4d59 STM32U5 CMSIS update 2021-09-10 11:16:16 +02:00
Jerome Coutant 3a1eb190d1 STM32U5 / GPIO HAL : GPIO_AF3_TIM1 is missing 2021-09-10 11:16:16 +02:00
Jerome Coutant 16a40c3ff1 STM32U5 ST_HAL_SPI workaround
Internal ticket 112451
2021-09-10 11:16:16 +02:00
Jerome Coutant 8bdd782a30 STM32U5 / CMSIS : USB_OTG patch 2021-09-10 11:16:16 +02:00
Jerome Coutant 59affad91c STM32U5: STM32Cube_FW_U5_V1.0.0 2021-09-10 11:16:08 +02:00
Martin Kojtal 5a3f3f7330
Merge pull request #15051 from hallard/STM32_LPTIM_Prescaler
Allow to use all STM32 targets prescaler for LPTIM
2021-09-10 09:52:04 +01:00
Martin Kojtal 9eed4272f5
Merge pull request #15029 from OpenNuvoton/nuvoton_m2354_tfm_import_mcu_partition
M2354: Fix incorrectly resolved peripheral base with security
2021-09-09 08:00:37 +01:00
Martin Kojtal 3031898929
Merge pull request #15027 from OpenNuvoton/nuvoton_m2354_tfm_fw_version
M2354: Generate unique MCUboot image version
2021-09-08 14:47:54 +01:00
Jerome Coutant 066c07b234 STM32 SPI : Pull Down for output line 2021-09-07 14:32:47 +02:00
Jerome Coutant 8bd27caf89 STM32 SPI : Add SPI reset in init 2021-09-07 14:32:47 +02:00
Jerome Coutant d3b03dec0c STM32 SPI : STM32H7 IP is SPI_IP_VERSION_V2 2021-09-07 14:32:39 +02:00
Charles 81876a0f88 added disclaimers 2021-09-06 10:25:42 +02:00
Charles 1ad23b8d13 Allow more target prescaler for LPTIM 2021-09-03 22:33:40 +02:00
Martin Kojtal 887bcf7f93
Merge pull request #15030 from OpenNuvoton/nuvoton_m2354_tfm_missing_lcdcp
M2354: Fix LCDCP missing in TF-M CLK pass list
2021-09-02 12:59:57 +01:00
Chun-Chieh Li dcd30e0cb0 M2354: Change MCUboot image versioning for unique version
Change MCUboot image versioning to meet requirements below:
1. Major.Minor.Revision must be non-decremental when used to derive security counter (-s 'auto').
2. Make Major.Minor.Revision+Build incremental to identify the firmware itself through psa_fwu_query().
3. Get around MCUboot failure with TF-M underestimated MAX_BOOT_RECORD_SZ
2021-09-02 09:18:25 +08:00
Chun-Chieh Li 6447b3d8f3 M2354: Fix LCDCP missing in TF-M CLK pass list
Besides LCD_MODULE, add LCDCP_MODULE into TF-M pass list for below CLK driver in NSPE:

-   CLK_SetModuleClock_S
-   CLK_EnableModuleClock_S
-   CLK_DisableModuleClock_S
-   CLK_GetModuleClockSource_S
2021-09-02 09:17:18 +08:00
Chun-Chieh Li fc080f76fc M2354: Fix incorrect peripheral base with security
Import mcu partition header (renamed to partition_M2354_im.h) for resolving peripheral base with security.
Though Mbed is non-secure only and needn't secure peripheral base, some BSP driver code still rely on it.
2021-09-02 09:16:01 +08:00
Konstantin Kochin 7bc773badd Improve STM32 SPI asynchronous API stability
`HAL_SPI_Receive_IT` HAL function causes dummy reads in 3-wire mode,
that causes data corruption in RX FIFO/register. It isn't possible
to fix it without signification refactoring, but we may prevent data
corruption with the following fixes:

- RX buffer/register cleanup after asynchronous transfer in 3-wire mode
- Explicit RX buffer/register cleanup after SPI initialization
  (for cases if we re-create SPI object).
2021-09-01 21:12:48 +03:00
Konstantin Kochin c60f0cc11e Fix STM32 spi_abort_asynch function
- add RX cleanup after SPI re-initialization,
  as it isn't implemented in the `HAL_SPI_Init`
- cancel SPI enabling for 3-wire mode
2021-09-01 21:12:48 +03:00
Konstantin Kochin f1c4a7fe52 Fix STM32 SPI 3-wire (synchronous API)
All STM32 families except STM32H7 has the following 3-wire SPI peculiarity in master receive mode:
SPI continuously generates clock signal till it's disabled by a software. It causes that a software
must disable SPI in time. Otherwise, "dummy" reads will be generated.

Current STM32 synchronous SPI 3-wire implementation relies on HAL library functions HAL_SPI_Receive/HAL_SPI_Transmit.
It performs some SPI state checks to detect errors, but unfortunately it isn't fast enough to disable SPI in time.
Additionally, a multithreading environment or interrupt events may cause extra delays.

This commit contains the custom transmit/receive function for SPI 3-wire mode. It uses critical sections to
prevents accidental interrupt event delays, disables SPI after each frame receiving and disables SPI during
frame generation. It adds some delay between SPI frames (~700 ns), but gives reliable 3-wire SPI communications.
2021-09-01 21:12:48 +03:00
Konstantin Kochin 179bba9189 Move common STM32 SPI operations to separate functions
- move a code that waits readable SPI state from `spi_master_write`
  function to inline functions `msp_writable` and `msp_wait_writable`
- move a code that waits writeable SPI state from `spi_master_write`
  function to inline functions `msp_readable` and `msp_wait_readable`
- move a code that writes data to SPI from `spi_master_write`
  function to inline function `msp_write_data`
- move a code that reads data from SPI from `spi_master_write`
  function to inline function `msp_read_data`
2021-09-01 21:12:48 +03:00
Lukas Karel e4f0281dd8 add RTC from HSE to target STM32F1 2021-09-01 14:42:04 +02:00
Martin Kojtal d2a88f4400
Merge pull request #15024 from OpenNuvoton/nuvoton_m2354_tfm_sdh
M2354: Enhance TF-M SDH stability
2021-08-26 10:22:48 +01:00
Martin Kojtal 43a060fe7c
Merge pull request #14926 from katherrafi/hal_callback_override
Eth: STM32: Overriding HAL callbacks in stm32xx
2021-08-26 09:51:48 +01:00
Chun-Chieh Li 259ee6b17a M2354: Enhance TF-M SDH stability
1.  Lower TF-M SDH clock to avoid premature timeout
2.  Re-initialize TF-M SDH on (timeout) failure
2021-08-26 11:02:13 +08:00
Kather Rafi Ibrahim a9f51e31fd Eth: STM32: Overriding HAL callbacks in stm32xx
This commit enables the Overriding of HAL callbacks and IRQHandler
in stm32xx_emac.cpp. Hence the user can have their own
implementations of callbacks and IRQHandler functions.

Signed-off-by: Kather Rafi Ibrahim <katherrafi.i@hcl.com>
2021-08-25 14:30:47 +05:30
cyliangtw f28181c32a M451 CAN API support mask feature 2021-08-24 19:14:27 +08:00