Commit Graph

155 Commits (feature-sdio)

Author SHA1 Message Date
Martin Kojtal df79609cc5
Merge pull request #11675 from jeromecoutant/PR_USB_STEP1
STM32 USB update step 1
2019-10-28 14:06:15 +01: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
jeromecoutant 6f0932033b STM32F4 USB pins addition 2019-10-21 17:11:27 +02:00
mahanthgouda 1780a08d54 Add OKDO platform (#11407)
Add OKDO platform
2019-09-16 16:58:54 +02:00
aqib-ublox 7f36fbc86e Driver Updates + ARMC6 driver support + wifi fixes 2019-08-29 11:33:29 +05:00
aqib-ublox 1ab75d3759 adding internal ADC pin definition for MBED_CONNECT_ODIN and MBED_ODIN_W2 2019-08-23 15:46:15 +05:00
aqib-ublox 80e30f4258 ADc internal temperature suuport and EMAC header fix 2019-08-20 18:44:22 +05:00
Kevin Bracey a522dcfa0a Replace deprecated wait calls 2019-07-15 10:13:50 +03:00
Vincent Veron 31eb49b918 TARGET_STM: Add DEVICE_SPI_COUNT to use SPIs without interference
Extend to all STM targets the work done on PR10752.

Signed-off-by: Vincent Veron <vincent.veron@st.com>
2019-06-14 14:15:56 +02:00
jeromecoutant d919498745 STM32: common cmsis.h and device.h 2019-05-27 16:27:41 +02:00
aqin 43759c0c4b Enterprise mode + wifi configuraiton api 2019-05-08 17:52:04 +05:00
Deepika 36c7b2de86 uARM - Move heap region after IRAM1
ARM_LIB_HEAP start is aligned to IRAM1 end, hence should be placed next to
RW_IRAM1 i.e. no other region in between.
2019-04-09 12:01:01 -05:00
Martin Kojtal 7d853b46c3
Merge pull request #10133 from ashok-rao/MTB_STM_F439
Adding STM32_F439 as a new MTB target
2019-03-20 13:52:46 +01:00
Ashok Rao 339f806c71 Removing redundant code.
MCO pins are not brought out on MTB / MCB design.
2019-03-18 12:37:27 +00:00
Ashok Rao e4f8b400f8 Adding STM32_F439 as a new MTB target 2019-03-17 19:20:43 +00:00
Jan Jongboom f3614abc30
OdinWifiInterface is calling memcpy with a null pointer 2019-03-07 16:47:56 +01:00
Deepika 122549910e Add Crash report section to all uARM files 2019-02-28 19:54:38 -06:00
deepikabhavnani 0dc5561991 Guard RAM start and size defines 2019-02-28 19:54:38 -06:00
deepikabhavnani b598dc1f46 Target_STM: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:28 -06:00
Cruz Monrreal e1736cd06f
Merge pull request #9571 from mprse/fix_9523_rtos_less_issue
Update to 2-region model for HEAP and Stack Memory
2019-02-26 22:50:19 -06:00
Cruz Monrreal 4b13c8a212
Merge pull request #9768 from c1728p9/feature-hal-spec-usb-device
Bring USB Feature branch into master
2019-02-26 22:48:02 -06:00
jeromecoutant 21606569da STM32F4: replace CLOCK_SOURCE_USB by DEVICE_USBDEVICE 2019-02-22 10:53:15 -06:00
Deepika 3fd5f53b51 Dynamic heap support will be breaking change for all targets in IAR 7.x
Reverting this feature till IAR 8.x is stable and supported in Mbed OS
for few releases

1. Revert "Add Dynamic heap support to IAR"

This reverts commit 8ee29bbfa2.

2. Revert "Splited RAM section not compatible with dynamic HEAP."

This reverts commit a645bb2a6b.

3. Revert "Add Dynamic heap support to IAR"

This reverts commit 891e1f261b.
2019-02-22 09:25:09 +00:00
deepikabhavnani b91dbab4bd Add Dynamic heap support to IAR
Two new block properties available in linker configuration files:
"expanding size" and "minimum size" for IAR 8.11.2 and above

Sample:
define block HEAP with expanding size, minimum size = 16K, alignment = 8 {};

This block will expand to consume all remaining available space in
the range where it is placed. If several such blocks end up in the same
range, they will share the remaining space.
Cannot place a block with expanding size inside another block with
expanding size, inside a block with maximum size, or inside an overlay.
2019-02-22 09:25:07 +00:00
aqin 84f52a871b adding updated binary for IAR v8.32 2019-02-22 09:25:06 +00:00
Martin Kojtal 39c8374760
Merge pull request #9554 from SeeedJP/hal-wio_3g-9450
Wio 3G: Modified sequence of module startup.
2019-02-20 13:57:33 +01:00
Yoshihiro TSUBOI c41f1c75d7 [Wio 3G] Fix onboard modem initialization
Fix for issue #9450 by adding turning off the modem power at startup, so that modem is sure to be in the initial state.
Fix for wrong filename and classname.

// WIP
2019-02-20 19:00:12 +09:00
Deepika e522c4691e Target_STM:_sbrk updated to use limits from linker files no need to set defines
_sbrk uses the exports from linker file __end and __HeapLimit to allocate memory
in heap. Linker scripts were updated accordingly to set the limits.
2019-02-19 15:49:49 -06:00
Yoshihiro TSUBOI 89bb25efc1 [Wio BG96] Fix onboard modem initialization
Fix for issue #9450 by adding turning off the modem power at startup, so that modem is sure to be in the initial state.
2019-02-19 00:44:38 +09:00
Nir Sonnenschein 8c2ad14ace
Merge pull request #9568 from ARMmbed/feature-cellular-refactor
Merge feature cellular refactor
2019-02-07 18:17:32 +02:00
Martin Kojtal 7106d0d201
Merge pull request #9557 from SeeedJP/hal-wio_bg96-9026
[Wio BG96] Modified pin map
2019-02-05 10:51:59 +01:00
Yoshihiro TSUBOI e19ddef069 [Wio BG96] Modified pin map
* Remove unused Peripheral Pins definitions and add UART_1 TXD/RXD pins (fix #9026)  for the Wio BG96 board
* Remove/Fix unused PinName definitions for the Wio BG96 board from the PinNames enum
2019-02-04 23:04:37 +09:00
Martin Kojtal 346ebe6344
Merge pull request #9556 from SeeedJP/hal-wio_3g-9026
[Wio 3G] Modified pin map
2019-02-04 14:41:58 +01:00
Yoshihiro TSUBOI a2f1e9c01e [Wio 3G] Modified pin map
* Remove unused Peripheral Pins definitions and add UART_1 TXD/RXD pins (fix #9026)  for the Wio 3G board
* Remove/Fix unused PinName definitions for the Wio 3G board from the PinNames enum
2019-02-04 18:12:29 +09:00
Ari Parkkila 7578d5b174 Cellular: Fix mbed2-build of onboard-modems 2019-01-29 01:08:17 -08:00
jeromecoutant a5ef971402 STM32: PeripheralPins files minor update
Script version 1.4
CubeMX DB version DB.5.0.1
2019-01-24 10:51:30 +01:00
Ari Parkkila af0d2cf61d Cellular: Update API description to match better onboard_modem_api 2019-01-22 02:24:45 -08:00
Ari Parkkila c4de2f2f0e Cellular: Power API updated to match onboard_modem_api 2019-01-22 02:24:45 -08:00
Ari Parkkila 269d151b12 Cellular: Default modem drivers with FF_ARDUINO 2019-01-22 02:24:45 -08:00
Ari Parkkila 75caa75a96 Cellular: Add get_target_default_instance in CellularDevice 2019-01-22 02:24:45 -08:00
Przemyslaw Stekiel 58f6bf7292 [STM] Support boot stack size configuration option 2019-01-08 15:32:06 +01:00
Martin Kojtal 63eca294a1
Merge pull request #9163 from InfernoEmbedded/fix-8913-partner
Don't use define checks on DEVICE_FOO macros (partner code)
2019-01-07 16:37:24 +00:00
Cruz Monrreal a8fa6ec38b
Merge pull request #9174 from ashok-rao/MTB_ODIN_v2_fixes
MTB_ODIN_v2_fixes
2018-12-22 12:33:53 -06:00
Ashok Rao 64e9ad0b11 MTB_ODIN_v2_fixes
1. Removed redundant code comments. Added relevant ones for MTB pins.
2. More SPI_CS pins added for peripherals on the MTB.
3. Disabled LSE_Clock as it is not present on the MTB in targets.json
2018-12-21 11:40:43 +00:00
Alastair D'Silva aa80b7c70a Don't use define checks on DEVICE_FOO macros (partner code)
The DEVICE_FOO macros are always defined (either 0 or 1).

This patch replaces any instances of a define check on a DEVICE_FOO
macro with value test instead.

Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2018-12-20 20:02:29 +11:00
jeromecoutant a8c87c0804 STM32F429/STM32F439 alignment 2018-11-30 09:20:29 +01:00
Cruz Monrreal 1c1638342d
Merge pull request #8708 from SeeedJP/wio_bg96_hal
[Wio BG96] Adding platform HAL
2018-11-26 11:22:29 -06:00
Senthil Ramakrishnan ef8c1c3cb6 Linker script modifications for crash data region 2018-11-16 13:59:59 -06:00
Yoshihiro TSUBOI dad6ede7f5 [Wio 3G] Added default I/F type and pin defs 2018-11-15 17:38:03 +09:00
Yoshihiro TSUBOI cd2a5835f8 fixed year and added SPDX identifier 2018-11-13 00:03:02 +09:00