Commit Graph

1856 Commits (a48d12683f8b6b96b07c262398097eeb89990506)

Author SHA1 Message Date
Martin Kojtal 87711a9111
Merge pull request #10471 from malavikasajikumar/master
SDP-K1: Updates to target code
2019-05-02 19:03:22 +01:00
Martin Kojtal d41962a8c8
SDP_K1: Fix year change in the system clock 2019-05-02 11:35:40 +01:00
Martin Kojtal 1de0712272
Merge pull request #9944 from deepikabhavnani/stm32_splitheap
GCC - Add support to split heap across 2-RAM banks
2019-04-30 11:02:51 +01:00
Malavika Sajikumar e0faeb2b65 Fixing alignment. 2019-04-29 09:52:01 -07:00
Martin Kojtal 2cd7aa1148
Merge pull request #10303 from juhoeskeli/mem_changes
STM32L4xx: IAR memory maps updated
2019-04-29 13:46:46 +01:00
Anna Bridge 536da479dc
Merge pull request #10018 from deepikabhavnani/stm32_heap_armc6
STM: Update linker script for using SRAM1 and SRAM2 in ARM
2019-04-26 13:30:42 +01:00
Malavika Sajikumar f11f63ddcf AWAKE signal turned on at system init for SDP-K1 board.
- Setting AWAKE signal high in the SystemInit() to ensure VIO supply to daughter boards through SDP and Arduino connectors.
2019-04-25 23:49:19 -07:00
Malavika Sajikumar 869e48dad0 Improvements made to PinNames.h of SDP-K1 board.
PinNames.h:
- Removing definition of Status LED.
- Redefining SPI and I2C pin names using Arduino pins names.
2019-04-25 23:49:19 -07:00
Juho Eskeli 443974b864 STM32L4xx: IAR linker file updated to better use available memory 2019-04-23 12:53:53 +03:00
Martin Kojtal b6a2c7b63f
Merge pull request #10019 from deepikabhavnani/uarm_fix
uARM - Move heap region after IRAM1
2019-04-18 12:49:56 +01:00
Deepika 4b7e163b57 Add missing boot stack size memory from heap calculation 2019-04-12 15:28:52 -05:00
jeromecoutant 9c63d91c11 STM32: protect compilation when DEVICE_USTICKER is disabled 2019-04-11 17:57:39 +02:00
Deepika feba293673 Update linker script for using SRAM1 and SRAM2 in ARM
To have the flexibilty in application; to use any of the section
    (data/bss/heap) without updating linker script in every use case,
    following decisions are made:
    1. Fixed size and small sections moved to SRAM2 (32K)
        Vectors
        Crash data
        Remaining section - RW / ZI
    2. Large memory space should be used for variable sections
       RW/ZI
       Heap - (Minimum - 0x12000)
       Stack - At bottom
2019-04-09 13:41:09 -05:00
Deepika 1576fb0aaa Add support for split heap in ST devices 2019-04-09 12:08:49 -05:00
Deepika 1a52587c2d Update the linker file to support single and multiple heap banks 2019-04-09 12:08:49 -05:00
Deepika 3593444e93 Add support of heap memory split between 2-RAM banks.
Please note the heap address of the both the banks must not be contigious else
GCC considers it to be single memory bank and does allocation across the banks,
which might result into hard-fault
2019-04-09 12:08:49 -05:00
Deepika 719d0fb94e Update linker script for split heap support
To have the flexibilty in application; to use any of the section
(data/bss/heap) without updating linker script in every use case,
following decisions are made:

1. Fixed size and small sections moved to SRAM2 (32K)
    Vectors
    Crash data
    Stack
    Remaining section - Heap memory
2. Large memory space should be used for variable sections
   Data
   BSS
   Heap - Remaining section

Heap is moved to the end of both sections as GCC allocates till 4K boundary,
if end of heap is not aligned to 4K, that chunk of memory will go unutilized
2019-04-09 12:08:49 -05:00
Marcus Chang 7c0714132c Expand sbrk to allocate memory from two regions 2019-04-09 12:08:49 -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
Vincent Veron 9856e86897 TARGET_STM32F7: Reset QSPI in default mode on abort for all versions.
This patch is missing in F7 HAL.
Fix #10049

Signed-off-by: Vincent Veron <vincent.veron@st.com>
2019-04-08 11:47:15 +02:00
Martin Kojtal c2ebb79723
Merge pull request #9814 from LMESTM/dev_NUCLEO_WB55RG
Adding NUCLEO_WB55RG support
2019-04-04 15:30:07 +02:00
Martin Kojtal 6081727cbf
Merge pull request #10115 from enebular/raven
Uhuru RAVEN: Adding platform HAL
2019-04-04 11:05:23 +02:00
Martin Kojtal 2a694cf1d9
Merge pull request #10143 from jeromecoutant/PR_ADC_RESETINTERNAL
STM32 ADC INTERNAL CHANNEL reset after read
2019-04-02 13:02:14 +02:00
Cruz Monrreal cdc2579b7b
Merge pull request #10248 from VVESTM/issue_9934
TARGET_STM32F7: Refresh cache when erasing or programming flash
2019-04-01 17:04:26 -05:00
Cruz Monrreal 4dd55d2db6
Merge pull request #10281 from ashok-rao/S2_LP
Adding support for S2_LP (WiSUN) as a new MTB target
2019-04-01 17:03:37 -05:00
Ashok Rao 1f572f987e SPDX license identifier changed to Apache-2.0 2019-04-01 15:17:06 +01:00
Ashok Rao 5cb1c64d59 Adding SPDX identifier 2019-04-01 11:21:45 +01:00
Ashok Rao 83ad921196 Resolving merge conflicts from my remote 2019-04-01 07:49:37 +01:00
Ashok Rao d4c83fc056 Adding STM32_F429 + S2_LP (WiSUN) as a new MTB target 2019-04-01 07:31:01 +01:00
Laurent Meunier b0f4815261 STM32WB: ADC INTERNAL CHANNEL reset after read
Internal channels use is enabling ADC "internal path" which needs
to be disabled after measurement.

Same applied here for WB family as was done for others in #10143.
2019-03-29 16:21:46 +01:00
Laurent Meunier c6277988c6 STM32WB: Only configure default peripherals in SetSysClock
Typically the RTC clock is configured by RTC driver itself.

RNG on the other hand is shared with M0+ core and it is expected that
M4 turns it on at boot time.
2019-03-29 16:21:46 +01:00
Laurent Meunier a744343931 STM32WB: disable debug lines when not needed
When doing so, do not disbale GPIO clocks as they may be used by other
drivers !

As a result, debug will be disabled by default, but can be enabled by
either modifying code or selecting MBED debug profile.
2019-03-29 16:21:46 +01:00
Laurent Meunier 718b16545c STM32WB: update deep sleep sequence
Review HSE clock initialization to match with latest CUBE firmware.
Also there is no need to set the full clock tree again after deep sleep exit.

With this change we get a stable deep sleep mode (when allowed by CORDIO stack).
2019-03-29 16:21:45 +01:00
Laurent Meunier b21110d6b8 STM32WB: Add FLASH HW Semaphore
Because FLASH is a shared resource between the 2 STM32WB cores, SW needs
to acquire HW Semaphore before using the resource.
2019-03-29 16:21:45 +01:00
Laurent Meunier 14ee4a1c7b STM32WB: Add TRNG HW Semaphore
Because TRNG is a shared resource between the 2 STM32WB cores, SW needs
to acquire HW Semaphore before using the resource.
2019-03-29 16:21:45 +01:00
Laurent Meunier 71c396cab1 STM32WB: update GCC linker script to match with master 2019-03-29 16:21:45 +01:00
Laurent Meunier 6caa4d487f STM32WB: Add SPDX identifier to new files
also update the copyright year when needed
2019-03-29 16:21:44 +01:00
Laurent Meunier c53021b77f STM32WB: Update headers 2019-03-29 16:21:43 +01:00
Laurent Meunier 002f40dd3a STM32WB: ARM linker script update
There is no need to add FIRST attribute to MAPPING_TABLE as the default
ordering is alphabetical order.

With this change, we don't have any warning with MBED2 and the sections
are properly ordered anyway in BLE cases.
2019-03-29 16:21:42 +01:00
Laurent Meunier f2580c1c4a STM32WB: Fix ARM link error in mbed2
In case of mbed2, BLE feature is not built.

As there is a MAPPING_TABLE in BLE feature which is not compiled in case
of mbed2, the linker reported the below error

[ERROR] "C:/Data/Workspace/mbed/BUILD/test/NUCLEO_WB55RG/ARM/MBED_2/
.link_script.sct", line 65 (column 6): Error: L6236E:
No section matches selector - no section to be FIRST/LAST.

Solution is to check whether BLE is enabled.
2019-03-29 16:21:41 +01:00
Laurent Meunier f9b4f11507 STM32WB: Adapt I2C timings
for now based on L4+ cubeMX inputs
2019-03-29 16:21:41 +01:00
Laurent Meunier bb2aea41f8 fixup! NUCLEO_WB55RG: add SDK files 2019-03-29 16:21:41 +01:00
Laurent Meunier e2cdb19e7f STM32WB: Add missing analogin_pinmap
This is required since PR #9449
commit
"Add HAL API for analog in pinmap"
2019-03-29 16:21:41 +01:00
Laurent Meunier d9c17addd7 Add WB support and CUBE FW version in readme.md 2019-03-29 16:21:40 +01:00
Laurent Meunier 5aa609b4db STM: fix minor warnings 2019-03-29 16:21:40 +01:00
Laurent Meunier 22f9ac6624 STM32WB: FIX LL RTC warning 2019-03-29 16:21:40 +01:00
Laurent Meunier 5871a712dc STM32WB: Move STM32WB utilies from FEATURE_BLE to targets folder
These files are not BLE specific, but also needed for some clock setting
for instance.

In order to compile an MBED2 application, we need to move the files.
2019-03-29 16:21:40 +01:00
Laurent Meunier 27e7e4d9df NUCLEO_WB55RG: Rework Clock and sleep support
- move hw_conf.h file to targets/TARGET_STM/TARGET_STM32WB directory as
this is used also out of BLE feature.
- create a dedicated hal_deepsleep function as the behavior in WB is a lot
different from other existing STM32 targets
- update clock tree configuration to directly clock the entire tree @ 32MHz
out of HSE. This is needed as we want to let the M0 core running without
any change on M0-side of clocks when M4 enters /exits deep sleep.
2019-03-29 16:21:40 +01:00
jeromecoutant ea86e8ef34 NUCLEO_WB55RG: HAL API updates to get SLEEP, RTC and LPTICKER OK
- astyle OK
- file alignment with other families
- HSE, MSI, HSI clock support
- LPTICKER with RTC and LPTIM tested
2019-03-29 16:21:38 +01:00
bcostm beab69704a NUCLEO_WB55RG: update STM common files
- Include RTC ll file from hal as in other families
- STM32WB: update Flash API driver
2019-03-29 16:21:38 +01:00