Commit Graph

98 Commits (6e645e50e87d200e7f0030e545d1099db9e54fc6)

Author SHA1 Message Date
bcostm 6e645e50e8 Add USART force/release Reset at Init phase 2016-06-10 11:56:42 +02:00
Martin Kojtal 7d583e5541 Merge pull request #1853 from svastm/update_cube_l4
[STM32L4XX] Update HAL_Cube_L4 to 1.5.1
2016-06-09 11:35:35 +01:00
Martin Kojtal 2197b87cca Merge pull request #1886 from kjbracey-arm/gpio_no_fsl
Don't pull KSDK FSL libraries into apps
2016-06-09 11:12:09 +01:00
Martin Kojtal f7e6a0f9ca Merge pull request #1879 from sbutcher-arm/mbedtls-entropy-collector
Add entropy collector for K64F to mbed HAL for use in mbed TLS
2016-06-09 11:07:24 +01:00
Kevin Bracey ecff7753fc Don't pull KSDK FSL libraries into apps
Freescale KSDK2 gpio_object.h pulled in Freescale libraries to inline
some GPIO operations.

The resulting namespace pollution (status_t) doesn't seem to be worth
the function call overhead. Hopefully making the base address array
non-automatic will offset that loss.
2016-06-09 10:28:56 +01:00
svastm 92688edc31 [STM32L4XX] Reset UART on init 2016-06-09 11:25:51 +02:00
svastm 2f29b9af2e [STM32L4XX] Fix deinit of SystemCoreClock on ARM toolchain 2016-06-09 11:25:51 +02:00
svastm 32bca79452 [STM32L4XX] Init daylight saving time 2016-06-09 11:25:51 +02:00
svastm a29e15e07c [STM32L4XX] Update HAL_Cube_L4 to 1.5.1 2016-06-09 11:25:51 +02:00
Simon Butcher f450786174 Add entropy collector for K64F to mbed HAL for use in mbed TLS
mbed TLS requires an entropy source, and this provides support for one through
the K64F RNG.
The macro MBEDTLS_ENTROPY_HARDWARE_ALT also added to target.json to enable use
of the entropy collector by mbed TLS.
2016-06-09 00:51:14 +01:00
Martin Kojtal d7a196e89e Merge pull request #1826 from jeromecoutant/PR_UpdateF0_driver_v1_5_0
[STM32F0] update Cube driver to v1.5.0
2016-06-08 14:11:59 +01:00
Martin Kojtal 5c60eb61d0 Merge pull request #1867 from rgrover/master
introduce the CMSIS Storage driver and its implementation for K64F
2016-06-08 13:56:27 +01:00
Martin Kojtal c9a15d0530 Merge pull request #1854 from pan-/nrf51_port
RTOS port for NRF51 targets
2016-06-08 13:52:32 +01:00
Rohit Grover 93564b6b57 add a missing extern to a global declaration of a status register 2016-06-08 11:23:44 +01:00
Rohit Grover 0986c54b20 guard code within DEVICE_STORAGE
as required by mbedmicro
2016-06-08 11:16:57 +01:00
Mahesh Mahadevan 847d3aa37b Fix for Issue# 1834 (#1871)
Explicitly disable the config for differential conversion

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-06-08 09:39:00 +01:00
Bartosz Szczepanski 5562f9a40a [STM32] Move CAN device.h defines to targets.json
This patch moves all CAN defines, for all STM32 boards with CAN support, to
targets.json file.

Change-Id: Ic3335cd4237e646d849b3554de69a9048846b186
2016-06-08 09:24:46 +02:00
Martin Kojtal 02bb0df4dc Merge pull request #1797 from 0xc0170/dev_k64f_hal_additions
k64f - mac address - fix warnings - get UID via K64F SIM macros
2016-06-07 16:02:40 +01:00
Rohit Grover 4651075403 introduce the CMSIS Storage driver and its implementation for K64F 2016-06-07 13:36:51 +01:00
Russ Butler ec81bccb01 Fix support for InterruptManager on KSDK 2
Add the define NVIC_NUM_VECTORS for KSDK 2 targets so InterruptManager
is supported.
2016-06-07 09:56:15 +01:00
Martin Kojtal 02ce61d802 Merge pull request #1774 from BartSX/can-devel-l4
[STM32L4xx] CAN development for STM32L4xx family
2016-06-07 07:45:42 +01:00
Martin Kojtal fc9bd4c27a Merge pull request #1858 from BartSX/f103
[NUCLEO_F103RB] Revert and update path for 16-bit timer
2016-06-06 17:39:18 +01:00
Jimmy Brisson 32075c38e4 added extra_labels_add checking to script
and moved a previously missed device.h file to targets.json
2016-06-06 10:33:58 -05:00
Bartosz Szczepanski f2c824cd54 [NUCLEO_F103RB] Revert and update path for 16-bit timer
Due to directory structure change, modification in e93878078 was made wrong
after rebasing the code.

This reverts commit e938780788 and updates path
to the correct file.

Note:
Current value of TIM_MST->CNT is read in interrupt context only.
This avoids master timer overflow without SlaveCounter update.

Continuation of patch: 07b841b08f

Change-Id: Iab0341847130f86e16500fd85024b6a87525fe14
2016-06-06 16:39:03 +02:00
Bartosz Szczepanski 10cce638a2 [NUCLEO_L476RG] Added CAN support
Added CAN API support for NUCLEO_L476RG target.

"stm32l476xx.h" file was changed to avoid compilation errors.

Change-Id: Ifadf7048f6c72c0311ec915e47ce2190460ede68
2016-06-06 16:20:46 +02:00
Bartosz Szczepanski 155d38ef9e [DISCO_L476VG] Added CAN support
Added CAN API support for DISCO_L476VG target.

*stm32l476xx.h* file was changed to avoid compilation errors.

NOTE: MBED_29 or MBED_30 cannot be tested on this platform because CAN pins are
soldered to USB, GYRO and others.

Change-Id: I2e85bd36dc45872b1ab617f072de98164f2c96f8
2016-06-06 16:19:11 +02:00
Bartosz Szczepanski 7a262f1b2d Added CAN API for STM32L4xx family
* STM32L4xx family have only one CAN bus

Change-Id: I95dcffac2176dba6d89850e24ba9561c11319f00
2016-06-06 16:04:31 +02:00
Martin Kojtal 0d3c83589b Merge pull request #1846 from jamike/fix-issue-1845
[NUCLEO_L476RG, DISCO_L476VG]: GCC_ARM, ARM_STD fix RTOS failed
2016-06-06 14:52:44 +01:00
Vincent Coubard 55a35f9b9b Use attributes from toolchain.h instead of compiler specific declaration. 2016-06-06 13:59:17 +01:00
Bartosz Szczepanski bafd20f561 [DISCO_F746NG] Added CAN support
Added CAN API support for DISCO_F746NG target.

Change-Id: I3b475309ab9b08c2e0ca1e8fe7e10489b8256321
2016-06-06 13:28:00 +02:00
Bartosz Szczepanski 4d22e94156 [NUCLEO_F746ZG] Added CAN support
Added CAN API support for NUCLEO_F746ZG target.

Change-Id: Ib9d416125671e3e1f1ef89e88e6da66f4c457f02
2016-06-06 13:28:00 +02:00
Bartosz Szczepanski 19f0c58514 Added CAN API for STM32F7xx family
Change-Id: I0f04f28d0d737e01eff737dfcab375c155d4f704
2016-06-06 13:10:47 +02:00
Bartosz Szczepanski 6e77543313 [NUCLEO_F103RB] Added CAN support
Added CAN API support for NUCLEO_F103RB target.

Change-Id: Ib5dac8023917afef683ba0703d732bbf53efdcd9
2016-06-06 13:00:03 +02:00
Bartosz Szczepanski 8b44c0d54b Added CAN API for STM32F1xx family.
* STM32F1xx family have only one CAN bus

Change-Id: Ie1c82a22e1483fc5d389b958d062f561770f9004
2016-06-06 12:53:51 +02:00
Vincent Coubard e46b659799 Merge branch 'master' of https://github.com/mbedmicro/mbed into nrf51_port 2016-06-05 20:46:42 +01:00
Vincent Coubard c0a6c7c6d4 Better generation of heap section.
With this change, the heap section occupy the whole space from the end of
the bss section to the start of the stack section instead of taking a
fixed size in RAM.

This change allows applications to make a more efficient use of the RAM
available and allows application to be compiled if the space between end
of bss and start of stack is less than 2048 bytes.
2016-06-05 17:56:01 +01:00
Jimmy Brisson dbeee2ab69 added device MICRONFCBOARD's provides to targets.json 2016-06-03 14:08:50 -05:00
Jimmy Brisson 9cf326861b HUGE COMMIT WARNING device.h defines -> target.json features
one problem:
[WARNING] device APPNEARME_MICRONFCBOARD did not have an associated entry in targets.json
2016-06-03 14:08:40 -05:00
Michel Jaouen 4e5fe30bc1 [NUCLEO_L476RG, DISCO_L476VG]: GCC_ARM, ARM_STD fix RTOS failed,
INIT_STACK used to compute RTOS main stack inconsistant with sp set at reset
align heap, stack config with IAR
issue: #1845
2016-06-03 18:49:54 +02:00
Martin Kojtal 986225d2a8 Merge pull request #1838 from egostm/dev_F4_V1.12.0
[STM32F4xx] Update Cube hal to v1.12.0
2016-06-03 15:22:34 +01:00
Erwan GOURIOU e5a12ea505 [STM32F4][DISCO-F429ZI] LSE not soldered. Use LSI RTC 2016-06-03 15:48:25 +02:00
Erwan GOURIOU 2afce67e5c [STM32F4][V1.12.0] SystemCoreClock update
With ARM and uARM toolchains, SystemCoreClock is reset before UART init by libc.
Fix to perform SystemCoreClock init with UART init out of HAL init.
2016-06-03 15:48:25 +02:00
Erwan GOURIOU a9b27da409 [STM32F4] Update Cube FW to V1.12.0
CMSIS to V2.5.0
HAL to V1.5.0
2016-06-03 15:48:25 +02:00
Erwan GOURIOU 8e15a6cc55 [STM32F4][V1.11.0] Update serial_api.c to support new UART_HandleTypeDef
Following cube update, there has been changes in cube HAL that impact
the serial_api.c layer. The global state has been moved to separate
global/tx and rx states, so we can now differentiate both.
2016-06-03 15:48:25 +02:00
Laurent Meunier 8955b6690d [STM32F4] Update to cube V1.11.0
This cube version includes
 HAL to V1.4.4
 CMSIS to V2.4.3
2016-06-03 15:48:25 +02:00
Laurent Meunier 08733d131d [STM32F4] Update to cube V1.10.0
CMSIS to V2.4.2
HAL to V1.4.3
2016-06-03 15:48:25 +02:00
Bartosz Szczepanski 766b5c29e2 [DISCO_F429ZI] Added CAN support
Added CAN API support for DISCO_F429ZI target.

Change-Id: I54b7d0ed25baf179fd899087297f4b8e76fc040a
2016-06-03 15:13:39 +02:00
Bartosz Szczepanski ce781448b7 [DISCO_F469NI] Added CAN support
Added CAN API support for DISCO_F469NI target.

Change-Id: Icfc52ec532aa71412814f245b41494fa69df4430
2016-06-03 15:13:39 +02:00
Bartosz Szczepanski 96787cd79e [NUCLEO_F446RE] Added CAN support
Added CAN API support for NUCLEO_F446RE target.

Change-Id: I6e585fd5ef9e5395c1dc5b9c31d09427927a0021
2016-06-03 14:48:20 +02:00
Vincent Coubard 000e04d768 RTOS port for nrf51.
The NRF51 doesn't have a systick. When the MCU doesn't have a systick, the
HAL has to export several functions which will be use by the kernel to
manage the tick:

  * os_tick_init provides the initialization function for the alternative
    hardware timer.
  * os_tick_val returns the current value of the alternative hardware timer.
  * os_tick_ovf returns the overflow flag of the alternative hardware timer.
  * os_tick_irqack is an interrupt acknowledge function that is called to
    confirm the alternative hardware timer interrupt.

The HAL should also call OS_Tick_Handler needs to be called as the
hardware timer interrupt function.

In the case of the NRF51, two RTCs are available:
  * RTC0: reserved for soft device
  * RTC1: used by us_ticker.

RTC1 is a 4 channels timers, channel 0 is used for us_ticker, and
in this port channel 1 is used for tick generation.

Implementation notes:
  * RTC1_IRQHandler: has to be written in assembly otherwise a stack
    overflow will occur because the function OS_Tick_Handler never
    returns. This function is called when RTC1 channel IRQ is triggered.
  * tick generation has been optimised for a tick with a duration of
    1000us.
  * us_ticker can still be compiled and used without RTX enabled.

More information about alternative timer as RTX Kernel Timer:
https://www.keil.com/pack/doc/CMSIS/RTX/html/_timer_tick.html
2016-06-03 10:13:10 +01:00