Commit Graph

18 Commits (tools-release-test-cov-patterns)

Author SHA1 Message Date
Kyle Kearney f38e21fa6c Update PSoC 6 BSPs to verion 1.2 2020-05-07 10:08:50 -07:00
Dustin Crossman f53e10e330 Update psoc6pdl to version 1.4.0 2020-01-02 10:04:45 -08:00
Dustin Crossman af5abae283 Updated cypress target code with latest configurator and PDL
library (1.4.0).
2020-01-02 09:49:29 -08:00
Ryan Morse 33695b3e2c Remove unnecessary peripherals from design files and regenerate source 2019-11-19 07:59:43 -08:00
Ryan Morse ea1f164814 Update board startup code to allow for not initializing the HAL 2019-11-19 07:59:42 -08:00
Ryan Morse 0b21a6940b Add CM0+ startup code to each target 2019-11-19 07:59:42 -08:00
Ryan Morse 7fd78bc988 Standardize target pin defines in cybsp_types.h. Make PinNames.h/PeripheralNames.h use standard defines 2019-11-19 07:46:27 -08: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
Kyle Kearney f0fdee4a1c Clean up BSP hardware configuration
- Improve block naming
- Remove unneeded items
2019-09-19 12:05:25 -07:00
Kyle Kearney 2831dfde1c Update CY8CPROTO-064-SB linker scripts
Update linker scripts for the latest PDL to be consistent with other Cypress targets
2019-09-19 12:03:32 -07:00
Kyle Kearney 70590006cb Simplify BSP contents
Remove some (Cypress-proprietary) BSP interfaces and hardware initialization
from the BSPs which is better implemented by a library or application firmware.
Move some remaining functionality from common to the individual targets.
2019-09-19 12:00:13 -07:00
Kyle Kearney 4ec3ad1850 Consolidate/clean up wifi initialization 2019-09-19 11:51:15 -07:00
Roman Okhrimenko c249bf97c2 Updated target files structure to align with the following BSP PR. 2019-08-30 15:10:19 +03:00
Roman Okhrimenko 515555e7ba Removed scripts for provisiongs from repository, made fixes per PR comments, adjusted Readme.md 2019-08-30 15:10:19 +03:00
Roman Okhrimenko 9d4a697207 Updated linker scripts and startup file for ARM - fixes tests-mbedmicro-rtos-mbed-heap_and_stack failure on ARM compiler. 2019-08-30 15:10:19 +03:00
Roman Okhrimenko b15d54f5bf Fixed IAR linker script. 2019-08-30 15:10:18 +03:00
Roman Okhrimenko ed9995e06c PSOC6_SB: Initial commit to add CY8CPROTO_064_SB to mbed-os sources. 2019-08-30 15:10:18 +03:00
Ryan Morse 5e2234f3e3 Add reserved resources lists to Cypress BSPs
These provide information to allow Cypress graphical configuration tools
to avoid conflicting usage of hardware resources which are managed by
firware included with the BSP.
2019-08-27 11:35:23 -07:00