Commit Graph

5852 Commits (a44fd827c271e2042d87c3c25465cef72d028956)

Author SHA1 Message Date
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
Martin Kojtal 58ef53aa10
Merge pull request #11734 from maciejbocianski/nxp_lpc55s69_i2c_pinmap_fix
nxp LPC55S69: fix i2c pin mapping
2019-10-24 11:19:10 +02:00
Chun-Chieh Li 8161386268 M2351: Update default secure image/gateway library
Update for change of TRNG security attribute
2019-10-24 10:55:24 +08:00
Chun-Chieh Li 4cd0332ada NUVOTON: Re-implement TRNG HAL with TRNG H/W
Targets supporting TRNG H/W:

-   NU_PFM_M2351_*
-   NUMAKER_IOT_M263A
2019-10-24 10:55:03 +08:00
Chun-Chieh Li 3f9ba9e61f NUVOTON: Fix BSP/MKROM header
Related targets:
-   NU_PFM_M2351_*
-   NUMAKER_IOT_M263A
2019-10-24 09:36:25 +08:00
Chun-Chieh Li d993c5a108 NUVOTON: Re-implement __PC() with toolchain built-in
Re-implement __PC() by replacing BSP assembly with toolchain built-in.
2019-10-24 09:36:25 +08:00
Chun-Chieh Li 3548d38a98 M2351: Change TRNG security attribute to secure 2019-10-24 09:36:24 +08:00
Chun-Chieh Li c326e07eb1 M2351: Update BSP/crypto driver 2019-10-24 09:36:24 +08: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
Martin Kojtal e7d95f5f2a
Merge pull request #11536 from jeromecoutant/PR_STM32_EMAC
STM32 EMAC configuration update
2019-10-23 13:10:10 +02:00
Martin Kojtal 97ef25f52f
Merge pull request #11706 from VeijoPesonen/nrf52840_fix_product_anomaly_macro
MCU_NRF52840: Switches to correct Product Anomaly Notification(PAN) macro
2019-10-22 16:28:23 +02:00
Martin Kojtal 5d330bff10
Merge pull request #11684 from manchoz/nrf52_watchdog_api
Add support for nRF52 Watchdog
2019-10-22 14:38:45 +02:00
Martin Kojtal 9db54bc1ee
Merge pull request #11672 from ABOSTM/I2C_FASTMODEPLUS
STM32F767ZI - I2C FastModePlus not properly enabled
2019-10-22 09:46:16 +02:00
Martin Kojtal 83207aef73
Merge pull request #11690 from shuopeng-deng/pr/port-api-changed-to-match-pin-api
Changed mbed gpio-port api to match gpio api
2019-10-22 09:44:35 +02:00
Martin Kojtal 278f05bfb9
cy port api: fix styling 2019-10-21 14:58:04 +01:00
Giampaolo Mancini c30ca66e2b Add SPDX identifier 2019-10-21 15:41:41 +02:00
Giampaolo Mancini f9674adaad Fix overflow calculation for reload_value.
Please,  note that this patch fixes upstream bug. See:

https://devzone.nordicsemi.com/f/nordic-q-a/51674/maximum-reload-time-for-wdt
2019-10-21 15:41:41 +02:00
Giampaolo Mancini c79f54c67b Remove default conf macro because typo in nRF SDK 2019-10-21 15:41:41 +02:00
Giampaolo Mancini 92a316711e Fix timeout limits 2019-10-21 15:41:41 +02:00
Giampaolo Mancini 10c78f41e8 Add support for nRF52 Watchdog 2019-10-21 15:41:40 +02:00
Martin Kojtal fe12608226
Merge pull request #11444 from jeromecoutant/PR_QSPI_EXTERNAL
QSPI : Define default pins at drivers level
2019-10-21 15:19:08 +02:00
Martin Kojtal cd415cfb41
Merge pull request #11708 from ABOSTM/FIX_SPI_COMPILATION_WARNING
TARGET_STM: remove warning and fix typo on SPI
2019-10-21 09:40:23 +02:00
Martin Kojtal 42cb19b6d8
Merge pull request #11679 from jeromecoutant/PR_L4_TRNG
STM32L4 TRNG clock configuration
2019-10-21 09:39:24 +02:00
Martin Kojtal 4af05bb370
Merge pull request #11648 from rohfle/target-olimex-stm32e407
OLIMEX_STM32E407_F407ZG: Added new target platform
2019-10-18 16:05:05 +02:00
Martin Kojtal d851a63e46
Merge pull request #11602 from kyle-cypress/pr/qspi-arbitrary-alt-size
Allow for arbitrary QSPI alt sizes
2019-10-18 15:48:16 +02:00
Martin Kojtal 9c82706e6f
Merge pull request #11434 from romanjoe/pr/cy8ckit_064s2_4343w
Initial addition of files to support CY8CKIT_064S2_4343W target
2019-10-18 14:51:59 +02:00
Martin Kojtal 734072ffc3
Merge pull request #11599 from lrusinowicz/spi_fixes
FUTURE_SEQUANA: SPI HAL API fixes
2019-10-18 13:25:08 +02:00
Martin Kojtal 8ff5cf9216
Merge pull request #11700 from toyowata/arch_max_bootloader
Add bootloader support for Seeed Arch-MAX
2019-10-18 10:32:00 +02:00
Alexandre Bourdiol bca9d9500e TARGET_STM: remove warning and fix typo on SPI 2019-10-18 09:48:30 +02:00
Veijo Pesonen a15cdd3194 MCU_NRF52840: Switches to correct Product Anomaly Notification macro 2019-10-18 07:23:59 +03:00
Rohan Fletcher 4b971fbb8f OLIMEX_STM32E407_F407ZG: Added definitions for missing LEDs 2019-10-18 06:37:09 +13:00
Martin Kojtal dba8e77b8c
Merge pull request #11688 from LMESTM/Clearing_UART_TC_Flag_prevents_deepsleep
Clearing UART TC Flag prevents deep sleep, so do not clear it
2019-10-17 14:17:15 +02:00
Martin Kojtal ccc37a181c
Merge pull request #11692 from VeijoPesonen/nrf52840_dk_enable_flashiap
NRF52840_DK: enables FLASHIAP for the device
2019-10-17 14:12:27 +02:00
Martin Kojtal 5747163664
Merge pull request #11694 from d-kato/rza1_fix_components
Fix components setting for GR-PEACH and GR-LYCHEE
2019-10-17 14:00:45 +02:00
jeromecoutant 7db11e0b20 STM32 TRNG clock configuration 2019-10-17 13:51:33 +02:00
toyowata 5389536953 Add bootloader support for Seeed Arch-MAX 2019-10-17 10:05:03 +09:00
Kyle Kearney 8e9877c212 Update STM driver changes for clarity
- Use a switch statement rather than shifting and masking to compute
  the AlternateBytes value.
- Rename rounded_size to alt_bytes to clarify its purpose.
2019-10-16 09:37:27 -07:00
Martin Kojtal 8c860524fb
Merge pull request #11646 from kyle-cypress/pr/bt-wake-swap
Fix swapped BT pins on CYW943012P6EVB-01
2019-10-16 19:13:18 +08:00
Martin Kojtal 16568da47f
Merge pull request #11605 from ABOSTM/DISCO_H747I_DUALCORE_SUPPORT
DISCO_H747I dualcore support
2019-10-16 17:35:25 +08:00
d-kato 307c106ec6 Fix multiple definitions of GR-LYCHEE 2019-10-16 16:33:05 +09:00
d-kato 2bf1b5c8cc Add FLASHIAP to GR-PEACH component 2019-10-16 16:28:41 +09:00
Martin Kojtal c94ae909a8
Merge pull request #11622 from trowbridgec/increase-nrfx-gpiote-config-num-of-low-power-events
nRF52 SDK 15.0 - Enable more than 1 interrupt
2019-10-16 14:26:04 +08:00
Veijo Pesonen b6453ef2cc NRF52840_DK: enables FLASHIAP for the device 2019-10-16 08:45:57 +03:00
Shuopeng Deng 24991a4577 Changed mbed gpio-port api to match gpio api
The port configuration api was not correctly setting the port-pins'
direction. Changed the port driver to call the gpio driver for
configuration (read and write still are optimized for port-level
operations) so that the behavior is consistent.
2019-10-15 11:43:00 -07:00
jeromecoutant f117d3518d QSPIF frequency setting depends on QSPI memory not target.
This makes new board with the same QSPI memory addition.
2019-10-15 17:36:50 +02:00
Martin Kojtal ea3ead0349
Merge pull request #11676 from maciejbocianski/nrf5X_fix_i2c_twi_sdk
nrf52 - fix i2c/twi driver
2019-10-15 22:16:19 +08:00
Martin Kojtal fb2999982b
Merge pull request #11671 from maciejbocianski/nrf5X_add_misisng_gpio_function
nrf5x - add missing gpio_set implementation
2019-10-15 22:15:18 +08:00
Laurent Meunier e862438fad Clearing UART TC Flag prevents deep sleep, so do not clear it
The TC flag is used in function serial_is_tx_ongoing to check if there is
an ongoing serial transmission. So this Flag must not be cleared at the
end of the transmission, otherwise, serial_is_tx_ongoing will notify that
TX is ongoing.

The impact is that it may prevent deep sleep to be entered.

Also there is no need to clear this flag at the end of the transaction
because it will be cleared automatically by HW when a new transmission
starts.
2019-10-15 15:59:51 +02:00
Martin Kojtal 9aee314803
Merge pull request #11673 from JanneKiiskila/stm32f4xx-hal-pcd
stm32f4xx_hal_pcd.c@346,22: unused variable 'ep'
2019-10-15 21:40:15 +08:00