Commit Graph

1251 Commits (5bb3ede8904d2488c60b1d7539dff2edcce87062)

Author SHA1 Message Date
Cruz Monrreal 2c5fedc0b2
Merge pull request from jeromecoutant/PULL_REQUEST_CUBE_UPDATE_F0_V1.9.0
STM32F0 : ST CUBE version update to V1.9.0
2018-01-11 10:24:28 -06:00
jeromecoutant 0eede79e2b DISCO_F407VG : alignment with other STM32
- clock source is now a user choice
- IAR tool chain is available
2018-01-10 15:01:29 +01:00
jeromecoutant a816e93e9a STM32 LOWPOWERTIMER : introduce LPTIM feature
STM32L0, L4, F7 and few F4 chip are supporting LPTIM feature.
We propose to allow user to use LPTIM for MBED LowPowerTimer API instead of using RTC wakeup timers.

By default, all targets that are supporting this feature have been configured.
2018-01-09 14:10:14 +01:00
Ashok Rao c138dedf73 Adding MTB MXChip EMW3166 as a new target 2018-01-08 21:07:38 +00:00
Jimmy Brisson 24b0387500
Merge pull request from jeromecoutant/PR_RTC_SLEEP
STM32 : Fix issue to exit deepsleep when RTC has not been initialized
2018-01-08 10:37:06 -06:00
Jimmy Brisson 737f75a68f
Merge pull request from productize/nucleo-f413zh
NUCLEO_F413ZH: Add support for the NUCLEO-F413ZH board
2018-01-08 10:35:27 -06:00
jeromecoutant 9c6e7c0fa0 STM32F4: STDIO_UART_TX and STDIO_UART_RX can be now user defined
NB for UBLOX targets: usb_rx and usb_tx config name are still available
in order to not break current applications.
2018-01-08 11:42:46 +01:00
jeromecoutant 59b4b228c4 STM32L4: STDIO_UART_TX and STDIO_UART_RX can be now user defined 2018-01-08 11:12:35 +01:00
jeromecoutant 7fa733e236 STM32L1: STDIO_UART_TX and STDIO_UART_RX can be now user defined 2018-01-08 11:12:24 +01:00
jeromecoutant 06e9fb6c9b STM32L0: STDIO_UART_TX and STDIO_UART_RX can be now user defined 2018-01-08 11:12:17 +01:00
jeromecoutant 93b34070ed STM32F7: STDIO_UART_TX and STDIO_UART_RX can be now user defined 2018-01-08 11:12:10 +01:00
jeromecoutant a7bddff5cc STM32F3: STDIO_UART_TX and STDIO_UART_RX can be now user defined 2018-01-08 11:12:04 +01:00
jeromecoutant 785862e69e STM32F2: STDIO_UART_TX and STDIO_UART_RX can be now user defined 2018-01-08 11:11:57 +01:00
jeromecoutant f97d84654e STM32F1: STDIO_UART_TX and STDIO_UART_RX can be now user defined 2018-01-08 11:11:51 +01:00
jeromecoutant 88678315f1 STM32F0: STDIO_UART_TX and STDIO_UART_RX can be now user defined 2018-01-08 11:11:43 +01:00
jeromecoutant e4169b7a9e STM32: update init procedure
- STDIO_UART define is no more used
- configuring a new serial with the same UART as STDIO is no more allowed
2018-01-05 15:16:38 +01:00
jeromecoutant 9f4bec2f2e STM32F0 : ST CUBE version update to V1.9.0
- Previous ST Cube version: V1.7.0
- CMSIS part update from 2.3.1 to 2.3.3
- HAL part update from 1.5.0 to 1.7.0
2018-01-05 14:46:33 +01:00
bcostm d96e76e7bd STM32 CAN: fix wrong ID and MASK filter 2018-01-05 10:11:17 +01:00
Jimmy Brisson af9e07357a
Merge pull request from ashok-rao/master
Adding MTB ublox ODIN W2 as a new target.
2018-01-04 10:05:02 -06:00
Jimmy Brisson 324e53b770
Merge pull request from bcostm/dev_flash_f3
STM32: Add support of Flash API for STM32F3 devices
2018-01-04 10:00:41 -06:00
Jimmy Brisson 62a7ecddd3
Merge pull request from jeromecoutant/PR_STDIO
STM32 UART init update
2018-01-04 09:50:18 -06:00
bcostm 058f011254 STM32F1: Remove flash functions doc 2018-01-04 15:43:54 +00:00
bcostm ca24ee4cd7 STM32F0: Remove flash functions doc 2018-01-04 15:43:54 +00:00
bcostm a47f9b3480 STM32F0: Add Flash API support 2018-01-04 15:43:54 +00:00
bcostm 6f5d8ff92e STM32F1: Add Flash API support 2018-01-04 15:43:54 +00:00
bcostm 0d3e189545 STM32F2: Remove flash functions doc 2018-01-03 15:26:10 +01:00
bcostm c86f1efd9c STM32F2: Add Flash API support 2018-01-03 15:26:10 +01:00
bcostm 8203a8ddf5 STM32F3: Remove flash functions doc + typos 2018-01-02 14:28:09 +01:00
bcostm 563338ad58 STM32F3: reset PGERR flash flag 2018-01-02 14:28:09 +01:00
bcostm b5324cae32 STM32F3: flash_api typos 2018-01-02 14:28:09 +01:00
bcostm 0d09f6d788 STM32F3: add Flash api 2018-01-02 14:28:09 +01:00
Anna Bridge 20ad454f2b
Merge pull request from andreaslarssonublox/ublox_init_odin_evk_leds
Added init for ODIN EVK LEDs to be off by default
2017-12-29 14:30:50 +00:00
Adam Heinrich da81229186 NUCLEO_F413ZH: Add support for the NUCLEO-F413ZH board
Merged from the existing TARGET_DISCO_F413ZH code (which has the same MCU)
and TARGET_NUCLEO_F412ZG code (which has the same Nucleo-144 board and
pinout).
2017-12-29 15:30:10 +01:00
Martin Kojtal dd5bd73a88
Merge pull request from kjbracey-arm/STM32F7_DMB
Add memory barriers to STM32F7xx Ethernet
2017-12-22 11:07:46 +00:00
Ashok Rao e324d16fab Fixing indentation 2017-12-21 15:38:58 +00:00
jeromecoutant 8c662132f4 STM32 : issue to exit deepsleep when RTC has not been initialized 2017-12-21 10:50:47 +01:00
Ashok Rao dc3c7fc11e Adding MTB ublox ODIN W2 2017-12-20 18:52:04 +00:00
Martin Kojtal 806b762473
Merge pull request from u-blox/c030_bq24295_voltage_fix
C030 Battery Charger Voltage Fix
2017-12-20 14:42:18 +00:00
Kevin Bracey 05e2ae7a70 Add memory barriers to STM32F7xx Ethernet
Pending official update from STM, add memory barriers to the Ethernet
HAL code for the STM32F7xx family.

Cortex-M7 has a merging write buffer that is not automatically flushed
by accesses to devices, so without these DMBs, we sometimes lose synch
with the transmitter.

The DMBs are architecturally needed in every version of this HAL, but
adding just to the STM32F7 version for now to clear test, as the
problem has only been observed on Cortex-M7-based devices.

Fixes .
2017-12-20 15:05:29 +02:00
jeromecoutant 8bc92bdd22 STM32F4 : compilation issue
Issue comes only when ST HAL macro USE_FULL_ASSERT is enabled
2017-12-13 13:57:26 +01:00
jeromecoutant 4637279f51 STM32L4 : compilation issue
Issue comes only when ST HAL macro USE_FULL_ASSERT is enabled
2017-12-13 13:57:17 +01:00
jeromecoutant 75db24ff15 STM32F3 : compilation issue
Issue comes only when ST HAL macro USE_FULL_ASSERT is enabled
2017-12-13 13:56:42 +01:00
Bilal 0469dfb892 Bracket moved to next line 2017-12-13 16:37:19 +05:00
Martin Kojtal cee180f472
Merge pull request from productize/fix-stm32-can3
STM32: Fix CAN3
2017-12-12 17:39:41 +00:00
Martin Kojtal be52ba2156
Merge pull request from mprse/extended_rtc
Add support and tests for extended RTC
2017-12-12 17:36:44 +00:00
Martin Kojtal da43d655ff
Merge pull request from jeromecoutant/PR_LPT_RTC
STM32 Low Power Timer feature updates
2017-12-12 17:33:31 +00:00
Martin Kojtal 047455eee9
Merge pull request from helmut64/NUCLEO_STM32L433_NEW
Support the STM NUCLEO_L433RC-P board
2017-12-12 17:29:51 +00:00
Martin Kojtal 84192fe676
Merge pull request from garivetm/bugfix-STM32CAN
STM32 - CAN - Fix RTR position bit in TX mailbox register
2017-12-12 17:27:57 +00:00
Bilal 5c1623c9e1 Licenses added in header files 2017-12-08 19:51:25 +05:00
Bilal a40469e7c5 C030 Battery Charger Voltage Fix 2017-12-08 17:39:21 +05:00
bcostm f08c04d81f STM32 CAN3: add CAN_3 declaration for DISCO_F769NI 2017-12-07 18:12:54 +01:00
Adam Heinrich 9ee222a8e6 STM32: Set valid filter number for CAN3
Filter numbers 14 to 27 are reserved for dual CAN configuration.
However, CAN3 operates in single CAN configuration according to the
reference manual).
2017-12-07 18:06:05 +01:00
bcostm bfc4d68ae0 STM32 CAN3: remove test of CAN_2 and CAN_3
CAN_2 and CAN_3 are enum and not #define and this causes compilation error with GCC_ARM

Instead put back the test of CAN_NUM (which are defined in can_device.h).
2017-12-07 18:04:34 +01:00
Adam Heinrich d33c0a6fa5 STM32: Pass correct id to can_irq() for CAN3 2017-12-06 19:41:20 +01:00
jeromecoutant 17a54840c7 STM32 RTC : update and comment prescaler values 2017-12-05 12:52:52 +01:00
Przemyslaw Stekiel 106561669f Update RTC drivers for extended RTC. 2017-12-05 07:54:02 +01:00
jeromecoutant 01b2b1baf3 STM32: RTC_LSI macro is replaced by lse_available config 2017-12-04 17:35:31 +01:00
jeromecoutant 354ed44a65 STM32 LOW_POWER_TIMER update : use error 2017-12-04 17:35:30 +01:00
jeromecoutant 85c337d0b9 STM32 LOW_POWER_TIMER update : rtc_init procedure 2017-12-04 17:35:29 +01:00
jeromecoutant c13ffaf477 STM32 LOW_POWER_TIMER update : sleep
RSF synchro after deepsleep is not specific to Low Power Timer feature
And we have to check if RTC is configured before synchro
2017-12-04 17:35:29 +01:00
jeromecoutant 0bf364ea55 STM32 LOW_POWER_TIMER update : rtc_api.c
Add RSF synchro during init
Set a better WakeUp clock for long wake up period in order to stay in sleep mode
Use rtc_isenabled function before init as rtc_init is called at each set_time call
2017-12-04 17:35:28 +01:00
jeromecoutant b65e861b20 STM32 LOW_POWER_TIMER update : lp_ticker
Removed unnecessary part
2017-12-04 17:35:27 +01:00
Martin Kojtal c7e5eb2f97
Merge pull request from sakuraio/stm_sco-evb-01
add target SAKURAIO_EVB_01.
2017-11-30 18:16:09 +00:00
Martin Kojtal 45e9e4cab3
Merge pull request from LMESTM/fix_slave_3wires
STM32: SPI 3 wires mode not supported in SPI slave
2017-11-30 18:11:16 +00:00
andreas.larsson 1eef1cd771 Added license header 2017-11-30 08:50:11 +01:00
andreas.larsson b5e9a5ca14 Added init for ODIN EVK LEDs to be off by default 2017-11-29 08:24:42 +01:00
Mathieu Garivet 6ee3d80b1c Fix RTR position bit in TX mailbox register 2017-11-28 18:44:28 +01:00
andreas.larsson f2de0956b4 Updated ODIN drivers to v2.3 RC1 2017-11-28 12:22:45 +01:00
Helmut Tschemernjak 63ad3aeae3 Added the proper defines for the STM32L432 bootloader support 2017-11-27 15:41:30 +01:00
Helmut Tschemernjak 4778a40643 Changed NVIC Flash base address to support the bootloader 2017-11-27 15:32:53 +01:00
Helmut Tschemernjak 632b2f1660 Updated wrongly defined UART3_BASE into USART3_BASE 2017-11-27 15:19:43 +01:00
Helmut Tschemernjak 66a1967fb4 Added TARGET_STM32L433RC stack size define into mbed_rtx.h 2017-11-27 15:15:17 +01:00
Helmut Tschemernjak fb914149dd Updated to toolchain startup/linker files to support the 433 devices
Also added the symbolic MBED_APP_START/MBED_APP_END defines
2017-11-27 15:03:43 +01:00
Helmut Tschemernjak 94c46b102b defined STM32L433xx 2017-11-27 14:52:37 +01:00
Helmut Tschemernjak e25dfc07f0 Added stm32l433xx.h defined STM32L433xx 2017-11-27 14:51:46 +01:00
Helmut Tschemernjak 6907b6d9e5 Updated PeripheralNames.h, PeripheralPins.c and PinNames.h for STM32L433 devices 2017-11-27 14:44:35 +01:00
Helmut Tschemernjak 90bb8fc368 Copied TARGET_STM32L432 to TARGET_STM32L433, renamed 432 files to 433 2017-11-27 14:36:47 +01:00
jeromecoutant 1cf47f6209 STM32 uart: update after code review 2017-11-24 13:39:33 +01:00
jeromecoutant 07e71d6ec8 STM32 LPUART : update clock source depending on expected baudrate 2017-11-23 14:52:35 +01:00
jeromecoutant 6d64c2fbf4 STM32 UART init update
- serial_init, serial_free and serial_baud function moved from serial_device.c (specific to each STM32 family) to serial_api.c (common STM32 file)
- default baudrate value was hardcoded to 9600
  - Value is set now to MBED_CONF_PLATFORM_STDIO_BAUD_RATE for STDIO
  - Value is set now to MBED_CONF_PLATFORM_DEFAULT_SERIAL_BAUD_RATE for other use
- UART init will not be stopped before calling serial_baud function
2017-11-23 14:47:54 +01:00
Laurent MEUNIER 839bd642d0 STM32: SPI 3 wires mode not supported in SPI slave
This patch handles the case of SPI slave mode without MISO (NC).
In case MISO is not connected, we consider that SPI will be configured in
3 wires mode (CLK / MOSI / CS, but no MISO). In this case, the MOSI line
is bi-directional : SPI_DIRECTION_1LINE.

But as this is not supported yet in slave mode, we force it to
SPI_DIRECTION_2LINES. In this case slave SPI will receive data on MOSI
but nothing will be sent back to master as MISO is not connected.
2017-11-23 10:10:05 +01:00
Jimmy Brisson 369187cadf
Merge pull request from MikeDK/nucleo_l432kc_async_serial_fix
NUCLEO_L432KC: Fixed async serial
2017-11-22 10:19:53 -06:00
Jimmy Brisson ced2f74f16
Merge pull request from bcostm/fix_adc_inited
STM32: Initialize ADC peripheral for each AnalogIn object creation
2017-11-22 10:16:14 -06:00
Jimmy Brisson 800be4e90d
Merge pull request from jeromecoutant/PR_L072
DISCO_L072CZ_LRWAN1 can use LSE from LORA module
2017-11-20 10:53:20 -06:00
Michael Kaplan 8a1c29c2e5 TARGET_STM32L4: added missing #ifdef in serial_device.c 2017-11-20 15:49:18 +01:00
bcostm c54e9079b8 STM32 ADC: replace flags type from int to bool 2017-11-17 13:50:59 +01:00
bcostm 1d3eb508bf STM32: fix linker error with adc_read() 2017-11-17 13:50:59 +01:00
bcostm 2bbedabf7d STM32: add analogin_api.c file in STM folder 2017-11-17 13:50:59 +01:00
bcostm 34fdcc926b STM32: move analogin_read functions in a common file 2017-11-17 13:50:59 +01:00
bcostm 4dbe95dded STM32: rename analogin_api.c in analogin_device.c 2017-11-17 13:50:59 +01:00
bcostm 072ec2e765 STM32L4 ADC: remove adc_inited flag 2017-11-17 13:50:59 +01:00
bcostm 52d942e2d2 STM32L1 ADC: remove adc_inited flag 2017-11-17 13:50:59 +01:00
bcostm 4b82479175 STM32L0 ADC: remove adc_inited flag 2017-11-17 13:50:59 +01:00
bcostm 75f80abddc STM32F7 ADC: remove adc_inited flag 2017-11-17 13:50:59 +01:00
bcostm d5ff05a03b STM32F4 ADC: remove adc_inited flag 2017-11-17 13:50:59 +01:00
bcostm 7005bc21d7 STM32F3 ADC: remove adc_inited flag 2017-11-17 13:50:59 +01:00
bcostm f12391ad25 STM32F2 ADC: remove adc_inited flag 2017-11-17 13:50:59 +01:00
bcostm 36110e10cf STM32F1 ADC: remove adc_inited flag 2017-11-17 13:50:58 +01:00
bcostm 2e2744ccbe STM32F0 ADC: remove adc_inited flag 2017-11-17 13:50:58 +01:00
Martin Kojtal 01bc4340e8
Merge pull request from bcostm/fix_disco_l072cz_extclock
DISCO_L072CZ_LRWAN1: HSE clock configuration improvement
2017-11-16 16:15:12 +00:00
Martin Kojtal 114e019675
Merge pull request from bcostm/fix_CAN3
STM32: Add support of CAN3
2017-11-16 16:12:27 +00:00
Martin Kojtal dc6dd5961e
Merge pull request from LMESTM/fix_smartcard_HAL
STM32: HAL smartcard, fix memory corruption in Receive
2017-11-16 16:11:04 +00:00
jeromecoutant 5f86ae5757 STM32L072CZ error in ARM sct file name 2017-11-16 15:12:51 +01:00
Martin Kojtal 41eb565d9c
Merge pull request from ARMmbed/feature_cortex_a
Update CMSIS/RTX with Cortex-A support
2017-11-15 11:24:36 +00:00
Laurent MEUNIER be42c6de55 STM32: HAL smartcard, fix memory corruption in Receive
Re-casting with tmp the uint8_t* pData pointer to uint16_t* brings a
memory corruption and typically can corrupt the size parameter. This
is fixed with this commit.

STM32 Internal ticket reference : 39116
2017-11-15 10:50:21 +01:00
bcostm 2d8d8ae9e1 STM32: fix error with CAN_3 not defined 2017-11-15 10:36:03 +01:00
bcostm 2e2b408580 STM32: fix compilation error with STM32F1 2017-11-15 09:07:52 +01:00
bcostm f0aed41991 DISCO_L072CZ: remove dead code 2017-11-15 08:59:50 +01:00
bcostm be2a6ae273 STM32: Use CAN3_BASE + typos 2017-11-14 09:48:02 +01:00
bcostm 0ef4e2881c STM32: Add support of CAN3 on STM32F413/F767 2017-11-14 09:48:02 +01:00
bcostm c0f6b25eba DISCO_L072CZ: align SetSysClock_PLL_HSE() with SetSysClock_PLL_HSI() 2017-11-13 11:34:56 +01:00
Bartek Szatkowski c5a5438256 Update params in calls to LD/STREXW to be uint32_t 2017-11-10 09:53:42 +00:00
Martin Kojtal 47bae16a5c
Merge pull request from andcor02/master
New Target: Mbed Connect Cloud board
2017-11-10 08:43:29 +00:00
Martin Kojtal 18393f3faf
Merge pull request from jeromecoutant/PR_L496
NUCLEO_L496ZG_P support
2017-11-09 16:32:56 +00:00
Martin Kojtal 66054f4b62
Merge pull request from LMESTM/flash_2MB_GetSector_fix
STM32 Flash 2MB GetSector fix
2017-11-09 16:23:02 +00:00
jeromecoutant 17c86d1cd6 STM32F412 IAR linker file issue 2017-11-09 09:45:07 +01:00
Laurent MEUNIER 48a49b4a00 STM32: remove trailing white spaces 2017-11-08 10:28:46 +01:00
Laurent MEUNIER d9bda2800d STM32F4: Flash: fix 2MB GetSector computation
The computation of the sector number in GetSector for 2MB flash sizes
consists in adding an extra constant for 2MB dual bank (12 as in
ADDR_FLASH_SECTOR_12), then going through the same address check as if it
was an address of the first sector.

That means that we need to modify tmp and address as if it was a first bank
address, which we're doing here by sub_stracting 0x100000 delta.
2017-11-08 10:24:36 +01:00
jeromecoutant dde615b8a8 NUCLEO_L496ZG minor update 2017-11-03 10:54:49 +01:00
Jimmy Brisson 9163ddfe61
Merge pull request from jeromecoutant/PR_MSP
STM32F4/STM32L4: remove MSP template file
2017-11-02 10:42:04 -05:00
Jimmy Brisson c40b642455
Merge pull request from catiedev/master
NUCLEO_L496ZG: Add new Platform
2017-11-02 10:36:23 -05:00
Andrea Corrado 53c476acf2 introduced mbed Connect Cloud board based on ODIN-W2 Module rety commit, added ublox changes
Corrected error

Corrected error in targets json

Reworked JSON

Added lwip-eth to Connect ODIN removes ARM CC error

Fixed formating issues

Correct formating error in  .json

Indentation errors
2017-10-31 11:24:28 +00:00
jeromecoutant c51f0f3d5f STM32F4/STM32L4: remove MSP template file
HAL_MspInit/HAL_MspDeInit/HAL_PPP_MspInit/HAL_PPP_MspDeInit weak functions can now be overwritten as it is expected
2017-10-30 10:38:43 +01:00
Anna Bridge 38ba693c57 Merge pull request from bcostm/remove_warnings
STM32: Remove compilation warnings
2017-10-26 11:05:20 +01:00
Jimmy Brisson 3354327a9f Merge pull request from bcostm/fix_dac_f207zg
NUCLEO_F207ZG: Analogout improvement
2017-10-23 10:31:17 -05:00
Jimmy Brisson 656aa8279b Merge pull request from LMESTM/trng_deprecated_call
STM32: TRNG: remove call to deprecated HAL_RNG_GetRandomNumber
2017-10-23 10:29:04 -05:00
misodengaku 1c28898ed1 add target TARGET_SAKURAIO_EVB_01. 2017-10-23 12:55:58 +09:00
Martin Kojtal 2af7213c51 Merge pull request from architech-boards/master
add support for SILICA_SENSOR_NODE platform
2017-10-19 16:44:17 +01:00
bcostm 35bf526ca4 STM32: Remove IAR compilation warning 2017-10-18 10:07:06 +02:00
bcostm ad55bc26dc STM32: Remove GCC_ARM compilation warnings 2017-10-17 14:04:59 +02:00
Laurent MEUNIER 849749f86f STM32: RNG: Ensure that no more than 1 instance is used
There is only 1 RNG HW IP and we do not support more than one driver
user at a time, so let's ensure this is the case and raise an error if
needed.
2017-10-13 16:59:33 +02:00
Laurent MEUNIER 14343c49c4 STM32: TRNG: remove call to deprecated HAL_RNG_GetRandomNumber
HAL_RNG_GetRandomNumber is a deprecated API and replaced here with
a call to HAL_RNG_GenerateRandomNumber.

Doing so, we also rework the driver to use the 4 bytes returned by a call
to HAL_RNG_GenerateRandomNumber instead of 1 byte out of 4.

HAL_RNG_GenerateRandomNumber was not returning any error code, so now
we can also check the return code.
2017-10-13 16:59:29 +02:00
Jimmy Brisson 410ef0cc6c Merge pull request from LMESTM/test_api_ticker
STM32: RTC: Call irq_handler whenever interrupt fires
2017-10-13 09:28:18 -05:00
Jimmy Brisson de3784f6da Merge pull request from bcostm/NUCLEO32_add_ALT_pins
STM32: Add alternate pins on NUCLEO 32pins boards
2017-10-13 09:27:53 -05:00
Jimmy Brisson f596c714bd Merge pull request from andreaslarssonublox/ublox_odin_driver_os_5_v2.2_rc1
Updated u-blox ODIN-W2 binaries to 2.2 rc1
2017-10-13 09:27:29 -05:00
Jimmy Brisson 8bf2775e00 Merge pull request from bcostm/fix_rtc_struct_init
STM32: Initialize RTC structures at init phase.
2017-10-13 09:27:06 -05:00
Jimmy Brisson 6a74cdb39c Merge pull request from bcostm/fix_init_struct
STM32: Fix analogout structure/variable wrong initialization
2017-10-13 09:25:59 -05:00
Pavel Sorejs 97cb8519c8 Add bootloaderd support to NUCLEO_F446RE target 2017-10-12 19:44:02 +02:00
Laurent MEUNIER e15ebd3c53 STM32: RTC: Call irq_handler whenever interrupt fires
lp_ticker driver is the known registered user of RTC handler API.

In case, a lp_ticker is set in the past, the lp_ticker_fire_interrupt
will be called which itself sets the RTC interrupt as pending by calling
NVIC_SetPendingIRQ(RTC_WKUP_IRQn). This all happens without actual
programing of the RTC wake-up.

As a result the RTC HW and corresponding HAL layer doesn't expect an
interrupt to happen and will not call HAL_RTCEx_WakeUpTimerEventCallback.

To sove this situation, we will not use HAL_RTCEx_WakeUpTimerEventCallback
weak definition but rather call handler whenever an RTC interrupt fires.
2017-10-10 17:05:45 +02:00
bcostm 992722df2a Initialize State variable 2017-10-10 16:47:05 +02:00
Roberto Spelta 35736f57a3 removed memory allocation 2017-10-10 16:46:12 +02:00
bcostm c571d8d6f8 STM32 RTC: initializes structures 2017-10-10 16:23:35 +02:00
Roberto Spelta 7af6e88999 fixed pin LEDs 2017-10-10 16:04:52 +02:00
bcostm 02598d57fa Typo correction 2017-10-10 15:04:56 +02:00
bcostm 868143e3dd Coding style and add State field init 2017-10-10 15:02:11 +02:00
bcostm c5cc9ec8cf NUCLEO_F207ZG: Fix issue with tests-api-analogout and GCC_ARM
Without this fix the tests-api-analogout test is fail with GCC_ARM.
2017-10-10 15:02:11 +02:00
bcostm e46beb659f NUCLEO_L011K4: add ALT pins + cleanup 2017-10-10 14:44:01 +02:00
bcostm 0155a416e6 NUCLEO_F042K6: add ALT pins + cleanup 2017-10-10 14:13:10 +02:00
Roberto Spelta 182d689b8c setted pin USBTX and USBRX 2017-10-10 13:58:41 +02:00
Roberto Spelta c5e6689e82 added TARGET_STM32L476JG define in mbed_rtx.h 2017-10-10 13:58:41 +02:00
Roberto Spelta f63dfce4bb modification to .ld to improve memory 2017-10-10 13:58:41 +02:00
Roberto Spelta e466685666 copy of L476RG ld file 2017-10-10 13:58:41 +02:00
Roberto Spelta 4d75cbec01 peripherals pins adaptation 2017-10-10 13:58:41 +02:00
Roberto Spelta a95acdabb3 copy of L476RG target 2017-10-10 13:58:41 +02:00
bcostm 6ac1b0e046 NUCLEO_L432KC: add ALT pins + cleanup 2017-10-10 10:51:04 +02:00
bcostm 34760c5567 NUCLEO_L031K6: add ALT pins + cleanup 2017-10-10 10:51:03 +02:00
bcostm f6e30e7422 NUCLEO_F303K8: add ALT pins + cleanup 2017-10-10 10:50:48 +02:00
Jimmy Brisson 80ff7071b4 Merge pull request from bcostm/L4_add_adc_calib
STM32: add ADC calibration for L4, F1, F3 devices
2017-10-09 11:15:31 -05:00
Jimmy Brisson df484e7885 Merge pull request from andreaslarssonublox/ublox_move_stdio_uart_defines
Moved STDIO_UART defines for UBLOX_EVK_ODIN_W2
2017-10-09 11:14:06 -05:00
Jimmy Brisson d60f1452d5 Merge pull request from LMESTM/i2c_OpenDrainNoPull
STM: I2C: Configure pins in OpenDrainNoPull by default (no pullup)
2017-10-09 11:12:04 -05:00
Pierre-Marie Ancele c476a600a2 remove sys.cpp file of the ARM_STD toolchain as done in the MR 2017-10-06 11:37:03 +02:00
Pierre-Marie Ancele ed32f57070 fix can_s struct definition 2017-10-06 11:37:03 +02:00
adustm 4e83d7fb15 Fix for IAR tests 2017-10-06 11:35:16 +02:00
adustm 554125ef07 Align IAR files with mbed-os implementation (tests are still failing) 2017-10-06 11:35:16 +02:00
adustm 3ca0b64318 Replace tab by spaces 2017-10-06 11:35:16 +02:00
adustm fa54e1ecba Make ARM test pass on mbed-os5 tests 2017-10-06 11:35:16 +02:00
adustm 02df64b7d6 replace tab by spaces 2017-10-06 11:35:16 +02:00
Nabil Elqatib 507d05915d Remove analogin_s definition from objects.h
The structure being already defined in
targets/TARGET_STM/TARGET_STM32L4/common_objects.h#L119, there is a
redefinition conflict.
2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele fb27107416 NUCLEO_L496ZG change LPUART1 clock source to fix crash on serial init 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele abb5e2d0d3 NUCLEO_L496ZG JSON Clock Configuration 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele 65fec215ab NUCLEO_L496ZG Fix IAR startup script 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele 4219ffc626 NUCLEO_L496ZG Fix ARM startup script 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele 3b2bc2d10c STM32L496xG fix objects.h to fit common_objects definition 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele 313a933c09 NUCLEO_L496ZG Update comments 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele cca32d8196 NUCLEO_L496ZG Use new alternative pins definition 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele aebc227c15 NUCLEO_L496ZG update date in file copyrights headers 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele 7c6c710ee1 NUCLEO_L496ZG Use correct linker script for IAR 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele eea667567e STM32L496ZG add IAR toolchain 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele dc2f29c86e STM32L496ZG add ARM_STD toolchain 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele 53d66bb013 STM32L496ZG add ARM_MICRO toolchain 2017-10-06 11:35:16 +02:00
Nabil Elqatib fd7008c779 Add BSP files for NUCLEO_L496ZG 2017-10-06 11:35:16 +02:00
Pierre-Marie Ancele 6d3e17cb3c add compatibility with STM32L496xG MCUs 2017-10-06 11:35:16 +02:00
bcostm 88b82e312d fix init struct analogout 2017-10-05 16:35:05 +02:00
andreas.larsson bc3fd12a0d Updated u-blox ODIN-W2 binaries to 2.2 rc1 2017-10-04 16:41:59 +02:00
andreas.larsson 120c9ad56c Moved STDIO_UART defines to targets.json for UBLOX_EVK_ODIN_W2 instead of hardcoded. 2017-10-02 17:45:41 +02:00
Jimmy Brisson c60194fdfd Merge pull request from jeromecoutant/PR_F7_RTC
STM32F7 : RTC Wake Up Timer issue
2017-10-02 10:41:31 -05:00
Jimmy Brisson cc0b3d05aa Merge pull request from bcostm/freeze_timer_in_debug
STM32: Freeze master timer on stop/breakpoint
2017-10-02 10:38:57 -05:00
Jimmy Brisson 60ca4e9615 Merge pull request from kegilbert/odin-pinNames-whitespace-adjust
Adjust whitespace in Odin PinNames file to fit verbose LED pin mappings
2017-09-29 10:07:46 -05:00
bcostm fca97146cd Add ADC calibration for STM32F1 and F3 devices 2017-09-28 12:49:11 +02:00
Jimmy Brisson c06368a21e Merge pull request from jeromecoutant/PR_L432_RAM
STM32L432KC: increase RAM size from 48k to 64k
2017-09-27 15:35:44 -05:00
Jimmy Brisson 6cb0258344 Merge pull request from LMESTM/flash_init_issue_4967
STM32: Lock / Unlock flash for each operation
2017-09-27 15:17:26 -05:00
Jimmy Brisson c24fed135b Merge pull request from 0xc0170/fix_mts_debug
mts targets: fix debug() usage
2017-09-27 09:07:53 -05:00
bcostm 4824e18a95 STM32L4: add ADC calibration 2017-09-27 14:38:34 +02:00
jeromecoutant 1e36eb6fc9 STM32F7 : RTC Wake Up Timer issue 2017-09-26 17:04:29 +02:00
Martin Kojtal a74e95fb26 Merge pull request from gorazdko/new-target-L-TEK-FF1705
Add new target: L-TEK FF1705
2017-09-22 11:32:50 +01:00
Jimmy Brisson a2cdb10bf7 Merge pull request from LMESTM/can_reset
Fix STM32 CAN reset to not lose context
2017-09-20 16:24:40 -05:00
jeromecoutant 8b0ee27819 STM32L432KC: increase RAM size from 48k to 64k
WARNING: you have to update ST-Link FW to V2J29M18
http://www.st.com/en/development-tools/stsw-link007.html
2017-09-19 15:11:23 +02:00
bcostm 5bf18682e2 Add FREEZE_TIMER_ON_DEBUG condition
In order to give the choice to enable or not the timer freeze on stop/breakpoint.
This has to be defined in the mbed_app.json file for example.
2017-09-18 13:39:05 +02:00
bcostm 9f86a32baf Add freeze timer on debug for all STM32 devices
This is a continuation of the work done on the STM32F401xE devices only.
2017-09-18 13:31:46 +02:00
Laurent MEUNIER 076b096efe STM: I2C: Confifure pins in OpenDrainNoPull by default (no pullup)
As reported by MBED user Fran6Jack:
I2C bus are usually 5V tolerant on all STM32 processor.
If an external device on the I2C bus requires 5V operation,
we usually acheive it by using 5V external pull-ups on the bus.
Since signaling uses open-drain output on I2C for both signal SCL and SDA
any 5V tolerant MCU will work on a 5V I2C bus. Having pull-up activated on a 5V externally pull bus, cause the pin to clamp on the STM32 die diode and could damage the IC (There is a note in STM32 datasheet specifying this issue).
It is understood by all the community that I2C bus should always be
externally pulled by physical resistor. I2C initialization should then
be ALWAYS OpenDrainNoPull by default.

Up to now, this I2C driver was setting pull up by default as it helps
basic testing, like 1 master and 1 slave, conencted with 2 wires without
any external pull ups. This will not work anymore after this commit and
applications tests or examples needs to be modified to explicitely
configure pull ups ...  But it is safer to follow reference manual
guidelines.
2017-09-14 17:15:11 +02:00
Jimmy Brisson d3b33d75a4 Correct NRF SDK11 assembly 2017-09-11 13:20:33 -05:00
Jimmy Brisson 0b7a9033b5 Enable many STM devices with ARMC6
Yet another incorrect arm vs gcc discriminant
2017-09-11 13:20:32 -05:00
Jimmy Brisson 15a9a0382b Enable Compiling with ARMC6 across all targets
remove duplicate sys.cpp
2017-09-11 13:20:32 -05:00
Jimmy Brisson 3f2e986256 Merge pull request from LMESTM/issue5004_ticker_16b
STM32_us_ticker_16b: keep code to cope with past event
2017-09-09 12:09:25 -05:00
Russ Butler 72f07ec4d9 Make room on stm32f07 for tickless
Decrease the interrupt stack from 2k down to 1k so there is enough
ram to build all the tests with tickless enabled. In general, targets
should not need an interrupt stack greater than 1k with mbed-os.
2017-09-07 21:35:06 -05:00
Jimmy Brisson 9b85155aa7 Merge pull request from betzw/betzw_freeze_github_wb
[STM32F401xE] Freeze master timer on stop/breakpoint
2017-09-06 14:25:47 -05:00
Martin Kojtal 52f84810a7 mts targets: fix debug() usage
Instead of using #if NDEBUG, we can directly invoke debug() function. Fixes 
2017-09-06 15:56:01 +01:00
Kevin Gilbert 6fa766da50 Adjust whitespace in Odin PinNames file to fit verbose LED pin mappings 2017-09-05 13:43:06 -05:00
Jimmy Brisson 5f9d984a22 Merge pull request from janjongboom/mts_printf
MTS targets: Don't use any printf() calls when NDEBUG is defined
2017-09-05 11:19:42 -05:00
Jimmy Brisson 34d41c5068 Merge pull request from kegilbert/odin-led-remap
Add LED color remapping definitions to Odin target
2017-09-05 11:17:42 -05:00
Jimmy Brisson e009d9f7be Merge pull request from LMESTM/STM32_SPI3W
Stm32 spi 3 wires mode support
2017-09-05 11:16:53 -05:00
Jimmy Brisson 94fb4a3aad Merge pull request from bcostm/adc_sampletime_vrefint
STM32F4: Increase ADC sample time for VREF
2017-09-05 11:15:53 -05:00
Laurent MEUNIER f5aa7c7c82 STM32: Lock / Unlock flash for each operation
Rather than Unlocking flash during flash object creation, and leaving
the flash possibly continuously unlocked a(s object might bever be freed),
we decide to Unlock then Lock again at each erase or program call.
2017-09-05 17:49:07 +02:00
Laurent MEUNIER f2eb77a81a STM32_us_ticker_16b: reset counter when fire interrupt
Fixing regression introduced in commit
"Ticker: add fire interrupt now function".

In above mentioned commit, the management of timestamp being in the past
has been moved to higher layer (hal/mbed_ticker_api.c), but the reset of
oc_int was missing when implementing the new us_ticker_fire_interrupt
function - which is fixed now.
2017-09-05 13:03:21 +02:00
Laurent MEUNIER 5997811d46 STM32: F2: put can_s struct under DEVICE_CAN option
In case of F2 devices without CAN support.
2017-09-05 10:27:21 +02:00
Laurent MEUNIER 04ac65a4e6 STM32: CAN: restore registers after can_reset
After reset the MCR register content needs to be restored so we're
introducing the can_registers_init function to be called at the first
init stage, but also after reset. We also store the can frequency to
go through the initialisation phase again.
2017-09-05 10:27:21 +02:00
Laurent MEUNIER 8357f6fe77 STM32: CAN: store the mode in object context
In order to apply the same mode in case of reset, we store the current
requested mode in the HAL structure.

To make storage in a single place, we also change can_monitor to call
can_mode function as they actually acting on same registers.
2017-09-05 10:27:21 +02:00
Laurent MEUNIER 57222b604f STM32: CAN: do not overwite BTR register when setting frequency
BTR register has other bits than the ones calculated and set through
the can_speed function, so let's take care to only write to the
right registers.
2017-09-05 10:27:21 +02:00
Laurent MEUNIER 759642af8e STM32: Define CAN handle as part of can object
Instead of a static object, this will make driver
instantiation more robust and allow to re-use init
configuration on a need basis.

The CANName struct member is actually the CAN registers base address,
which is now available in the CanHandle.Instance field, so we don't need
CANName anymore.
2017-09-05 10:27:21 +02:00
Laurent MEUNIER 66162c6b1d STM32: move can_s definition to common_objects.h
This will ease up further changes to the structure.
2017-09-05 10:27:21 +02:00
Martin Kojtal 675a17cff2 Merge pull request from LMESTM/stm32_flash_update
Stm32 flash update
2017-09-04 16:49:18 +01:00
Jan Jongboom 72262ca0b3 MTS targets: Don't use any printf() calls when NDEBUG is defined, prevents linking out printf() and friends in release build 2017-09-04 12:05:41 +01:00
Laurent MEUNIER b01cc966b0 Introduce TIMEOUT_1_BYTE
This makes the code more explicit about what is last parameter of
HAL_SPI_Transmit/HAL_SPI_Receive functions.
2017-09-04 11:16:49 +02:00
Kevin Gilbert 41000e091c Add LED color remapping definitions to Odin target 2017-09-01 17:00:24 -05:00
gorazd 7773acd78c arduino connector namings added 2017-08-31 15:18:14 +02:00
Jimmy Brisson 82f5ce22f8 Merge pull request from JanneKiiskila/ublox_odin_buttons
UBLOX_EVK_ODIN_W2- add BUTTON1/2 definitions
2017-08-29 13:46:10 -05:00
Jimmy Brisson d68cd09c63 Merge pull request from LMESTM/F1_AFIO_CLK
STM32: F1 GPIO: Enable AFIO clock
2017-08-29 13:45:27 -05:00
Laurent MEUNIER dacf04e69b STM32: Flash: cover TARGET_F410RB case
There was a comilation error for NUCLeO_F410RB as it does not have
a ADDR_FLASH_SECTOR_5.
2017-08-29 11:42:51 +02:00
Wolfgang Betz f8114f2295 [STM32F401xE] Freeze master timer on stop/breakpoint 2017-08-28 14:29:47 +02:00
Laurent MEUNIER a9468c09e3 STM32: F7 Flash API support
Adding flash API support to STM32F7 family. The code is derived from
F4 family one. The memory topology is described in flash_data.h files
and the flash_api.c implementation manages the 2 possible memory types (1
or 2 banks).
2017-08-28 10:23:55 +02:00
Laurent MEUNIER e6631c02a4 STM32: adjust flash.get_page_size() to minimum programable size
Users of FlashIAP usually get the minimum programable size
by calling flash.get_page_size(), so let's return the minimum
to allows a most efficient usage of flash.

For F4 devices, this is 1 byte.
For L0 and L1 devices, this is a word (4 bytes).
For L4 devices, this is a double word (8 bytes).
2017-08-25 17:21:30 +02:00
Laurent MEUNIER 3de2ce9c10 STM32: Add Flash API support to STM32F413xH
First add the flash_data.h that describe the flash memory topology,
and also activate FLASH support for the corresponding targets.

This is a 1,5MB flash memory device which contains 15 sectors, where
sectors 12 to 15 are 128KB sectors. So flash_api.c needed has been
updated to differentiate between this flash memory and the 2MB ones
by checking existence of sector 16 instead of sector 12.
2017-08-25 17:21:30 +02:00
Laurent MEUNIER 4b62cf015c STM32: Add Flash API support to STM32F469xI
First add the flash_data.h that describe the flash memory topology,
and also activate FLASH support for the corresponding targets.
2017-08-25 17:21:08 +02:00
Laurent MEUNIER 86ad16f5f8 STM32: Add Flash API support to STM32F410RB
First add the flash_data.h that describe the flash memory topology,
and also activate FLASH support for the corresponding targets.
2017-08-25 17:20:40 +02:00
Laurent MEUNIER 645fd0f06d STM32: Add Flash API support to STM32F4 devices with 512KB Flash
First add the flash_data.h that describe the flash memory topology,
and also activate FLASH support for the corresponding targets.
2017-08-25 17:20:13 +02:00
Jimmy Brisson 3926b56cd8 Merge pull request from LMESTM/F410RB_ARM_TC
STM32: fix F410RB vectors size
2017-08-24 10:16:31 -05:00
Janne Kiiskilä 2e6cd907d4 UBLOX_ODIN_EVK_W2 - add BUTTON1/2 definitions
UBLOX_ODIN_EVK_W2 is missing the abstract button definitions originally
introduced with PR https://github.com/ARMmbed/mbed-os/pull/4249.

Fix two tab to spaces issues on the go as well.
2017-08-22 09:54:53 +03:00
Jimmy Brisson 316c875136 Merge pull request from bcostm/merge_l053x8
STM32L053x8: Refactor NUCLEO_L053R8 and DISCO_L053C8 targets
2017-08-21 10:38:42 -05:00
Jimmy Brisson bb7ab1942a Merge pull request from pilotak/patch-1
target BLUEPILL_F103C8 compile fix
2017-08-21 10:37:01 -05:00
Laurent MEUNIER d4fa585ac4 STM32: F1 GPIO: Enable AFIO clock
It is required to enable AFIO clock before using __HAL_AFIO_REMAP_xy
macros, which was missing here. Without clocks enable, the remap
actually doesn't occur. This would possibly cause some PIOs (part of
PB_3, PB_4, PA_13, PA_14, PA_15) to not behave as expected.

In most cases AFIO clock was enabled in stm_pin_SetAFPin function, so
that this bug was not visible. But there were few cases left were
stm_pin_DisconnectDebug would be called first. A typical case was
with GCC_ARM in case a DigitalInOut variable is declared as global.
2017-08-21 13:32:33 +02:00
Laurent MEUNIER 95fc6d0bad STM32: fix F410RB vectors size
On F410RB, the size reserved to vectors with ARM toolchains was not properly
defined,which was not the case for other toolchains.

This would cause few tests to fail like EXAMPLE_1 with below error:

HOST: Unknown property: mbed assertation failed: _ptr == (T *)&_data, file: C:/github/mbed/BUILD/mbed/platform/SingletonPtr.h, line 91
2017-08-18 11:57:51 +02:00
bcostm d0fce353cc STM32F4: Set ADC sample time to max value for VRefInt 2017-08-17 16:12:16 +02:00
Laurent MEUNIER 8c99bf3b62 SPI: HAL: disable IP at the end of transmit
in case of 1LINE direction
2017-08-17 11:02:43 +02:00
mapellil 6dfafc7293 STM32: SPI: Use LL in spi_slave_read
this is more a cosmetic change, but since LL was introduced, we can now
use it here as well.
2017-08-17 11:02:43 +02:00
Laurent MEUNIER 57371ea591 STM32: SPI: Do not enable SPI during Init if 3W
Enabling SPI causes the clock to be output by default.

Most devices will not care about extra clock cycles, especially as long
as chip select is not active, nevertheless this may cause side issues
with other devices especially during init phase.

This was actually the case with a 3 wire device (LPS22HB sensor).
2017-08-17 11:02:43 +02:00
mapellil 4f20cfc0be STM32: SPI: SPI3W / SPI_DIRECTION_1LINE management
In case MISO is not passed at SPI init, then we consider a 3 wires SPI
configuration is requested, which corresponds to SPI_DIRECTION_1LINE
configuration parameter in STM32 HAL layer.

We're then handling this specific case of SPI_DIRECTION_1LINE,
in spi_master_write or spi_master_block_write, we call to HAL API
2017-08-17 11:02:43 +02:00
bcostm 8273e371df STM32L053x8: Align system_clock.c files 2017-08-17 10:55:18 +02:00
bcostm 580c7cb0b6 STM32L053x8: cleanup ARM compiler files 2017-08-16 17:10:42 +02:00
bcostm 9b8bb9eec4 STM32L053x8: Move other folders and files 2017-08-16 17:10:42 +02:00
bcostm 04cefd300d STM32L053x8: Create folder and move objects.h 2017-08-16 17:10:42 +02:00