Commit Graph

5393 Commits (0e40e89b7f6436041d41be744d4c5628c2c7b1e6)

Author SHA1 Message Date
Filip Jagodzinski 4842c87815 RDA5981X: Add SERIAL_FC
According to comment in the implementation this target supports the
hardware flow control on UART1 peripheral.
This patch fixes build errors after adding DEVICE_SERIAL_FC guards to
hal/serial_api.h.
2019-07-09 16:30:12 +02:00
Filip Jagodzinski 68d222b3d1 MPS2: Fix serial_init when FC is not used
After adding DEVICE_SERIAL_FC guards to serial_api.h
serial_set_flow_control is not available. In case of this
implementation, this function is a no-op and may be safely removed.
2019-07-09 16:12:32 +02:00
Filip Jagodzinski 86149e59d6 FVP_MPS2: Fix serial_init when FC is not used
After adding DEVICE_SERIAL_FC guards to serial_api.h
serial_set_flow_control is not available. In case of this
implementation, this function is a no-op and may be safely removed.
2019-07-09 16:05:04 +02:00
Martin Kojtal 647b5817ce
Merge pull request #10982 from jeromecoutant/PR_LPUART
STM32 LPUART minor update  for easy maintenance
2019-07-09 08:33:06 +01:00
Martin Kojtal 358046e472
Merge pull request #10989 from mprse/spi_fpga_basic_test_ext
SPI FPGA test extension + SPI driver fix (K64F)
2019-07-08 20:42:47 +01:00
Volodymyr Medvid d77fb26e9f PSOC6: fix license headers per review feedback 2019-07-08 18:25:03 +03:00
Arto Kinnunen 1264660314
Merge pull request #10972 from 0xc0170/test_target
add new target IM880B
2019-07-08 16:34:36 +03:00
Martin Kojtal bd762ce03f
Merge pull request #10466 from jeromecoutant/PR_STM32H7_WATCHDOG
STM32H7: WATCHDOG and RESET_REASON support
2019-07-08 13:54:40 +01:00
Przemyslaw Stekiel 7d7c1416af K64F SPI driver: Add the delay between CS assertion and first sclk edge
FPGA test shield requires at lease half slck period delay between CS assertion and first sclk edge.
2019-07-08 14:54:33 +02:00
Volodymyr Medvid 1501ffe704 PSOC6: remove CY8CKIT-062S2-4343W (not ready for release)
Also removed _M0 targets that are no longer used.
2019-07-08 14:49:26 +03:00
Volodymyr Medvid 5cc66282dd PSOC6: remove PSA targets 2019-07-08 14:49:26 +03:00
Volodymyr Medvid 56f1d0613f PSOC6: remove libwiced_drivers for targets ported to WHD 2019-07-08 14:49:26 +03:00
Volodymyr Medvid d07ca87816 PSOC6: update Cypress boards to use TARGET_WHD 2019-07-08 14:49:26 +03:00
Volodymyr Medvid 8ede226c16 PSOC6: add WHD sources 2019-07-08 14:24:23 +03:00
Volodymyr Medvid 4f22853c1e PSOC6: update BSP sources 2019-07-08 14:24:23 +03:00
Volodymyr Medvid c647531767 PSOC6: update BSP GeneratedSource, add design.modus 2019-07-08 14:24:22 +03:00
Volodymyr Medvid 4bd47e9bca PSOC6: update to latest psoc6pdl 2019-07-08 14:24:21 +03:00
Volodymyr Medvid b562dd7895 PSOC6: update Cypress targets to use psoc6csp 2019-07-08 14:24:20 +03:00
Volodymyr Medvid a9cd9482c0 PSOC6: add psoc6csp asset with Cypress HAL implementation
PSoC 6 Chip Support Package provides hardware abstraction layer
for Cypress PSoC 6 device peripherals.
2019-07-08 13:26:46 +03:00
Chun-Chieh Li 3d905b0607 [NUC472] Override wait_ns(...) to provide more accurate implementation
NUC472 series doesn't support cache but supports branch buffer. But it still
cannot provide zero-wait state flash performance.
2019-07-08 17:52:26 +08:00
Chun-Chieh Li 2b9ee2a93f [NANO130] Override wait_ns(...) to provide more accurate implementation
NANO100 series doesn't support cache and so cannot provide zero-wait state
flash performance.
2019-07-08 17:52:26 +08:00
Chun-Chieh Li a03985ea43 [M2351] Refine wait_ns(...) code
1.  Add missing header file for mbed_mpu_manager_lock_ram_execution()/
    mbed_mpu_manager_unlock_ram_execution() to avoid compile warning.
2.  Locate delay_loop_code() on 16-byte boundary (sync to common version).
3.  Optimize delay_loop macro (sync to common version).
2019-07-08 17:51:49 +08:00
Volodymyr Medvid c9105eb068 PSOC6: use prebuilt CM0+ C arrays instead of HEX images
Replace the prebuilt CM0+ HEX images with C files that provide the
variable cy_m0p_image placed to the combined ELF image with linker
script. This simplifies build flow of PSoC 6 application and improves
compatibility with IDE export targets. It is still possible to use
the custom prebuilt HEX images for PSA targets that remove CM0P_SLEEP
label and specify the `hex_filename` in targets.json.
Linker scripts are compatible with both scenarios.
2019-07-08 10:41:02 +01:00
Volodymyr Medvid 9d983478d7 PSOC6: add psoc6cm0p asset with prebuilt CM0+ C arrays 2019-07-08 10:33:48 +01:00
Volodymyr Medvid 903085d066 PSOC6: format extra labels for Cypress kits 2019-07-08 10:31:14 +01:00
Arto Kinnunen 3d65ace77a
Merge pull request #10950 from artokin/Update_freescale_K6xF_linker_files
Enable split heap in K64F/K66F devices
2019-07-08 11:46:30 +03:00
jeromecoutant 8a3fd6a040 STM32 LPUART update 2019-07-05 17:52:41 +02:00
jeromecoutant 923be9e20e NUCLEO_H743ZI: enable WATCHDOG back 2019-07-05 14:44:47 +02:00
jeromecoutant 8b6d0920a8 STM32H7: Reset Reason update 2019-07-05 14:44:45 +02:00
jeromecoutant aa31b1268a STM32H7 watchdog patch 2019-07-05 14:44:43 +02:00
jeromecoutant da9b919268 STM32H7: Increase watchdog timeout value 2019-07-05 14:44:41 +02:00
jeromecoutant 3384cea281 STM32H7 : add LSI 2019-07-05 14:44:39 +02:00
Martin Kojtal 97d50ed936
Merge pull request #10873 from ganesh-ramachandran/m3hq_newfeatures
Add new features to Toshiba's TMPM3HQ
2019-07-05 13:06:46 +01:00
Martin Kojtal e08b7137a6
Merge pull request #10874 from ganesh-ramachandran/m3h6_newfeatures
Add new features to Toshiba's TMPM3H6
2019-07-05 13:06:03 +01:00
Arto Kinnunen d7190c8af4 Adjust K66F GCC_ARM linker file
Move heap_0 after .data as it is also placed to m_data.
2019-07-05 14:59:35 +03:00
Martin Kojtal 1eeed8c0e5
Merge pull request #10968 from teetak01/fix-mtb-stm-s2lp-for-client
Add FLASHIAP for MTB_STM_S2LP
2019-07-05 11:21:48 +01:00
Martin Kojtal b47064ae65
Merge pull request #10933 from tymoteuszblochmobica/chache
Nordic NRF52832 cache ON
2019-07-05 10:09:59 +01:00
itziar c327f4f070 add new target IM880B 2019-07-05 09:19:51 +01:00
Martin Kojtal a56247317e
Merge pull request #10798 from ThunderSoft123/master
TARGET_TT:Add GPIO INT pin with PT1
2019-07-05 08:57:34 +01:00
Teemu Takaluoma 0726e2f13b Add FLASHIAP for MTB_STM_S2LP
Fix device management client compilation on MTB_STM_S2LP

Fixes:

./mbed-cloud-client/mbed-client-pal/Source/Port/Reference-Impl/OS_Specific/mbedOS/ROT/pal_plat_rot.cpp:67:5: error: 'DeviceKey' was not declared in this scope
    DeviceKey &devkey = DeviceKey::get_instance();
2019-07-05 10:26:26 +03:00
Ganesh Ramachandran 61ad427a35 Changes for RTC peripheral status 2019-07-03 17:58:47 +05:30
Ganesh Ramachandran b4c0ce3a7e Changes for RTC peripheral status 2019-07-03 17:57:49 +05:30
Ganesh Ramachandran 3d48b7c1cc Changes for RTC peripheral status 2019-07-03 17:50:26 +05:30
Ganesh Ramachandran 6841f4a73a Added new features to TMPM3HQ 2019-07-03 17:18:10 +05:30
Ganesh Ramachandran bcaeddcb35 Removed dead code in TMPM4G9 - rtc_api.c 2019-07-03 17:10:30 +05:30
Ganesh Ramachandran 6eb07c1beb ARMC5 updated to ARM for TMPM4G9 2019-07-03 17:10:29 +05:30
Ganesh Ramachandran 4bbc29f32c Added SPDX identifier 2019-07-03 17:10:29 +05:30
Ganesh Ramachandran 2384b69b16 Added new features to TMPM4G9 2019-07-03 17:10:29 +05:30
Ganesh Ramachandran 2fee8d7390 Added new features to TMPM3H6 2019-07-03 17:01:41 +05:30
Martin Kojtal 608e4c245f
Merge pull request #10938 from tymoteuszblochmobica/iar
K64F, STM32F429: IAR linker scripts dynamic  heap fix
2019-07-03 12:00:35 +01:00
Martin Kojtal 0e3a96305c
Merge pull request #10939 from AGlass0fMilk/fix-nrf52840-adc-resolution
Fix SAADC resolution for nRF52-based targets
2019-07-03 11:47:17 +01:00
Martin Kojtal ccb63d771e
Merge pull request #10857 from ARMmbed/feature-watchdog
Add Watchdog and ResetReason
2019-07-03 11:43:52 +01:00
Kevin Bracey 810cb8de4a Enable split heap in K64F/K66F devices
-Enable MBED_SPLIT_HEAP for K64F and K66F
-Allow GCC_ARM toolchain to utilize remaining 64K memory area
-Make ARM toolchain to start memory filling from 64K region to leave
 more space to bigger 192K region.
2019-07-03 11:47:32 +03:00
Martin Kojtal 149d53cc89
Merge pull request #10619 from jamesbeyond/fm-iap
Fastmodel: enable flashIAP and kvstore
2019-07-02 14:23:00 +01:00
Martin Kojtal a84c239830
Merge pull request #10701 from LMESTM/STM_lp_ticker_low_level_wrapper
STM: replace C++ low power ticker wrapper with a low level wrapper
2019-07-02 12:50:11 +01:00
Martin Kojtal fd445a57cb Watchdog: remove config value for timeout, set it dynamically
Use start method to set timeout
2019-07-02 12:46:23 +01:00
Martin Kojtal 7b0915c7d4 Watchdog: refactor driver
Watchdog is hardware driver. It interacts with HAL - provides wrapper to interact with the peripheral.

Provides basic functionality: start/stop, get timeout/max timeout.
It is automatically kicked by a timer, according to the timeout set in ctor.
2019-07-02 12:46:23 +01:00
Martin Kojtal 8b49ffc0c3
Merge pull request #10920 from NXPmicro/Update_Kinetis_SDK_Clock_Driver
Kinetis MCUXpresso: Update the clock drivers
2019-07-02 12:44:09 +01:00
George Beckstein f2b88362fb Apply same resolution fix to nRF52832 targets 2019-07-01 12:22:04 -04:00
George Beckstein b08a26bfa0 Fix SAADC resolution set in sdk_config. analogin_read_u16 assumes 12-bit range but config was set to 10 bit range causing incorrect readings to be returned. 2019-07-01 12:09:27 -04:00
Tymoteusz Bloch 83057c95d0 IAR icf linker scripts modified to use dynamic heap allocation of all available memory. 2019-07-01 17:57:40 +02:00
Tymoteusz Bloch 1af0fe89b8 Nordic NRF52832 onboard instruction cache is turned ON to increase MCU performance 2019-07-01 15:08:53 +02:00
Kevin Bracey 1ced842391 STM: Correct macro test in us_ticker_defines.h
Avoids build warning caused by #10609
2019-07-01 13:34:55 +03:00
Martin Kojtal 279925b6fc
Merge pull request #10869 from mathias-arm/master
LPC55S69: fix cosFactor data size in header file
2019-07-01 09:27:57 +01:00
Martin Kojtal be2c2bed30
Merge pull request #10884 from jeromecoutant/PR_H743ZI2
NUCLEO_H743ZI2 new target support
2019-07-01 09:27:31 +01:00
Martin Kojtal 9e0dc3e198
Merge pull request #10859 from malavikasajikumar/master
Removing I2C and SPI pin names in SDP-K1 PinNames.h file.
2019-07-01 09:23:06 +01:00
Martin Kojtal d71db32154
Merge pull request #10881 from AGlass0fMilk/fix-nrf52-critical-region-api
Fix Nordic/Mbed Critical Section API Inconsistency (In Builds w/o Softdevice)
2019-07-01 09:18:10 +01:00
Laurent Meunier 6331034bd1 STM32 with low level ticker wrapper require Extra Idle stack 2019-07-01 09:33:23 +02:00
Laurent Meunier 58a4685811 STM32: lp_ticker optim: initialize handle once only 2019-07-01 09:33:23 +02:00
Laurent Meunier ee95c7e64a STM32: lp_ticker optim: remove irq_handler variable 2019-07-01 09:33:23 +02:00
Laurent Meunier 8616cd7655 Update comments and fix typo 2019-07-01 09:33:23 +02:00
Laurent Meunier 501881bf38 Update warning now that C++ wrapper is not needed anymore
Now we'd rather not use this wrapper and use instead the low level
wrapper implemented in this driver.
2019-07-01 09:33:22 +02:00
Laurent Meunier 6397a6189f STM32 targets: remove tickless from us ticker and delay ticker
For L0/L4/H7/F7/WB targets that have tickless enabled, remove the tickless from
us ticker and the delay ticks as the C++ wrapper layer is being removed
and replaced by the low layer handling.

For now, the few F4 targets with LPTIM are left with previous configuration
as test results are showing a few instabilities not yet understood.
2019-07-01 09:33:22 +02:00
Laurent Meunier d4ec62ff0c Manage lp_ticker delay at low level
LP TICKER mbed-os wrapper needs to be disabled as it introduces too much latencies.

LP TICKER wrapper has been disabled and we need to managed the HW constraints at low level:
- main HW constraint is that once the comparator has been programmed once,
driver cannot program it again before CMPOK HW flag is set, which takes about 3 30us cycles.

To make it even more complex, the driver also needs to cope with "LP ticker workaround"

See commit:

LP ticker workaround

    There is an errata in LPTIM specification that explains that CMP Flag
    condition is not an exact match (COUNTER = MATCH) but rather a
    comparison (COUNTER >= MATCH).

Also the disable interrupt is more complete now:
- always check sleep manager status and restore it
- remove irq_handler as comparator is always programed and might get called
eventually when LP TICK is restarted
- reset delayed_prog

Also in set_interrupt, make sure interrupt does not fire early.
If needed, we decide to slightly delay the tick to cope with the HW limitation to
make sure it will fire as soon as HW is capable.

Functions are called under critical section as they may be called from
the IRQ handler now, not only from driver layer.
2019-07-01 09:31:53 +02:00
Laurent Meunier 6452eb3172 LP ticker workaround
There is an errata in LPTIM specification that explains that CMP Flag
condition is not an exact match (COUNTER = MATCH) but rather a
comparison (COUNTER >= MATCH).

As a consequence the interrupt is firing early than expected when
programing a timestamp after the 0xFFFF wrap-around.

In order to
work-around this issue, we implement the below work-around.
In case timestamp is after the work-around, let's decide to program the
CMP value to 0xFFFF, which is the wrap-around value. There would anyway be
a wake-up at the time of wrap-around to let the OS update the system time.
When the wrap-around interrupt happen, OS will check the current time and
program again the timestamp to the proper value.
2019-07-01 09:31:53 +02:00
Mahesh Mahadevan 6c674ec0c7 Kinetis MCUXpresso: Update the clock drivers
Updated driver includes
1. Bug fixes
2. Formatting updates.
3. Fix for warnings
4. Better code commenting

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-06-28 10:09:52 -05:00
Martin Kojtal 85c477c1dc
Merge pull request #10609 from kjbracey-arm/us_ticker_optimise
wait_us optimization
2019-06-28 14:29:00 +01:00
Martin Kojtal 61c4d05ce9
Merge pull request #10824 from ABOSTM/PRSTM32_PWMWRTIE_GLITCH_10734
STM32: pwmout_write: configure channel only when not already enabled
2019-06-28 14:24:14 +01:00
Martin Kojtal 201a264051
Merge pull request #10791 from hugueskamba/fix-lpc55s69-bootloader-segmentation
bootloader: Fix LPC55S69 bootloader segmentation
2019-06-27 10:22:55 +01:00
Martin Kojtal d4aab5669d
Merge pull request #10888 from devran01/issue/10883
Remove macro MBEDTLS_PSA_CRYPTO_C from PSA targets
2019-06-27 10:10:47 +01:00
ThunderSoft_mbed_os edeeb33ba7
Update gpio_irq_api.c 2019-06-26 22:33:31 +08:00
Hugues Kamba b0804c4a0d bootloader: Fix LPC55S69 bootloader segmentation
As the build tool in mbed-os 5.13 cannot appropriately deal with a segmented
bootloader when combining it with an application, this commit adjusts the
size reserved for interrupts (via the linker file) to avoid a bootloader
segmentation due to an unpopulated ROM area.

The microcontroller has a total of 60 vector interrupts + 16 exception
handlers. The allocated ROM flash for interrupts should be (60 + 16) x word
size in bytes = 76 x 4 = 304 = 0x130.

This commit changes the interrupt reserved space from 0x140 to 0x130.
2019-06-26 13:55:07 +01:00
Martin Kojtal 924af9481e
Merge pull request #10841 from VVESTM/vve_10827_spi_count
TARGET_STM: Add DEVICE_SPI_COUNT to use SPIs without interference
2019-06-26 09:09:38 +01:00
Martin Kojtal b0073bb70d
Merge pull request #10774 from fkjagodzinski/fix-uart_irq
Fix serial IRQ handling
2019-06-25 15:49:41 +01:00
Martin Kojtal fa2e0217f2
Merge pull request #10856 from jeromecoutant/PR_CRC_LO
STM32: enable CRC for all L0/L4/F7
2019-06-25 11:08:08 +01:00
Devaraj Ranganna bd9d615897 Remove MBEDTLS_PSA_CRYPTO_C from PSA NS targets
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2019-06-25 09:55:59 +01:00
Devaraj Ranganna cb8f2c07a1 1. Include MBEDTLS_CONFIG_FILE before evaluating MBEDTLS_PSA_CRYPTO_C
2. Remove macro MBEDTLS_PSA_CRYPTO_C from PSA targets

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2019-06-24 14:33:04 +01:00
George Beckstein 15cd907d35
Fix alignment 2019-06-24 08:34:54 -04:00
jeromecoutant d2ea0f9432 NUCLEO_H743ZI2 new target support 2019-06-24 11:00:58 +02:00
ThunderSoft_mbed_os 24384a0fa0
Update gpio_irq_api.c 2019-06-23 22:00:51 +08:00
George Beckstein f548f558da Fixed bug causing Nordic drivers to use a different critical section API from Mbed. This caused conflicts when Nordic's critical section API would globally reenable interrupts while Mbed still expected to be in a critical section. 2019-06-20 14:54:10 -04:00
Alexandre Bourdiol a339084684 STM32: pwmout_write: configure channel only when not already enabled
Fix PWM glitch on write(), TARGET_STM/pwmout_api.c, #10734
2019-06-20 17:49:16 +02:00
Maciej Bocianski fcde82ba4f HAL I2C: adds missing DEVICE_I2C guards 2019-06-19 23:08:55 +02:00
Mathias Brossard ccbb26e2f3 LPC55S69: fix cosFactor data size in header file
The file 'fsl_powerquad_data.h' declares several dctXXX_cosFactor
arrays with sizes twice larger compared to the actual definitions in
'fsl_powerquad_data.c'.
2019-06-19 15:17:18 -05:00
Anna Bridge 4bd1d15d01
Merge pull request #10795 from jamesbeyond/fm_m0p_no_mpu
FastModel: trun off MPU for FVP_MPS2_M0P
2019-06-19 12:39:17 +01:00
Anna Bridge 32c8bf5969
Merge pull request #10792 from hugueskamba/fix-lpc55s69-sector-size
Fix: Allow target size restriction for LPC55S69
2019-06-19 12:36:22 +01:00
Anna Bridge 2a7635f536
Merge pull request #10782 from d-kato/rza1_armc6
GR_LYCHEE,RZ_A1H,VK_RZ_A1H: Fix greentea test failure with ARMC6
2019-06-19 12:33:28 +01:00
Anna Bridge 372f9c89fc
Merge pull request #10769 from vmedcy/pr/psoc6-softfp
PSOC6: add SOFTFP to standard component list
2019-06-19 12:31:15 +01:00
Anna Bridge ac274833f0
Merge pull request #10741 from OpenNuvoton/nuvoton_m2351_wait-ns
M2351: Override wait_ns to provide more accurate implementation
2019-06-19 12:22:56 +01:00
Anna Bridge 07f1e068a9
Merge pull request #10689 from AGlass0fMilk/nrf52840-usbphy-implementation
nRF52840 USB Device Implementation
2019-06-18 16:28:20 +01:00