Commit Graph

25688 Commits (e74fbcd79ebaf7f2891a93669ff74b79b04e4b99)

Author SHA1 Message Date
Lin Gao e74fbcd79e Add CC3220SF_Launchxl to Mbed OS 2019-07-17 13:19:32 -05:00
Seppo Takalo 3d5489a6f8
Merge pull request #10644 from fkjagodzinski/hal-gpio_pinmap
Add a gpio pinmap
2019-07-17 14:39:40 +03:00
Seppo Takalo 987533859a
Merge pull request #10104 from kjbracey-arm/sleep_api
Sleep rework, RTOS API for bare metal, wait deprecations
2019-07-17 14:37:53 +03:00
Seppo Takalo 8efd123776
Merge pull request #11042 from caoyuan96421/bugfix
Fixed serial_device IRQ infinite loop bug due to uint8_t overflowing in STM devices
2019-07-17 14:33:21 +03:00
Seppo Takalo 5b6034d0a9
Merge pull request #11028 from c1728p9/fpga_warnings
Fix FPGA CI Test Shield warnings
2019-07-17 14:32:43 +03:00
Seppo Takalo 0425ffda9b
Merge pull request #11026 from c1728p9/skip_peripherals
Add a restricted peripheral list
2019-07-17 14:32:08 +03:00
Seppo Takalo 02f8fbda62
Merge pull request #11019 from OpenNuvoton/nuvoton_wait-ns
Nuvoton: Modify wait ns(...) to provide more accurate implementation
2019-07-17 14:30:47 +03:00
Seppo Takalo 59b9f1da17
Merge pull request #11014 from SiliconLabs/fix/fpga_tests/adc_methodology
Increase ADC tolerance to 5% in FPGA-based tests
2019-07-17 14:29:37 +03:00
Evelyne Donnaes 0a4e5146b0
Merge pull request #11049 from SeppoTakalo/normalize
Normalize line endings for IM880B startup files.
2019-07-17 09:24:52 +01:00
Kevin Bracey 163fb19d97 events: Don't use OsTimer in SysTick builds
Previous fix assumed OsTimer is in use - it is for tickless RTOS builds
and non-RTOS builds, but non-tickless RTOS builds avoid it altogether
and use the SysTick peripheral.

Restore previous behaviour for those builds, and just always read the
tick count - there is no downside to this when ticking.

While in the code, make equeue_tick initialisation explicit. This was
problem if the OsTimer is not yet initialised when th
done while debugging - turns out not to be part of the fix, but it
speeds up the runtime code.
2019-07-16 14:38:08 +03:00
Arto Kinnunen 9cdfe37783
Merge pull request #10994 from fkjagodzinski/fix-serial_fc_guards
Add DEVICE_SERIAL_FC guards to serial HAL API
2019-07-15 15:47:37 +03:00
Arto Kinnunen 85a90221ed
Merge pull request #11004 from jeromecoutant/PR_I2C
FPGA I2C: correct init bloc number
2019-07-15 15:46:10 +03:00
Arto Kinnunen 51b44d1cfa
Merge pull request #11005 from jeromecoutant/PR_PWM
FPGA PWM: wait 1 period before measurement
2019-07-15 15:44:47 +03:00
Arto Kinnunen 01484a2226
Merge pull request #11007 from SiliconLabs/fix/fpga_tests/pwm
Fix PWM output on Silicon Labs targets for large pulsewidths
2019-07-15 15:43:46 +03:00
Arto Kinnunen b5d8c3860e
Merge pull request #11008 from SiliconLabs/fix/fpga_tests/spi
Enable FPGA-based SPI testing on Silicon Labs targets
2019-07-15 15:42:55 +03:00
Arto Kinnunen 6ef5e228b5
Merge pull request #11015 from SiliconLabs/fix/fpga_tests/adc
Fix wrongly declared ADC pinout for EFM32GG11 STK3701A
2019-07-15 15:38:47 +03:00
Arto Kinnunen aca726d59f
Merge pull request #11022 from OpenNuvoton/nuvoton_wdt-test-oom
Fix watchdog tests failing with OOM
2019-07-15 15:37:24 +03:00
Arto Kinnunen 5c45fa72a9
Merge pull request #11003 from NXPmicro/Fix_LPC_I2C
LPC MCUXpresso: Remove extra I2C transaction on byte write
2019-07-15 15:32:02 +03:00
Arto Kinnunen 1a9020ac42
Merge pull request #10895 from kjbracey-arm/event_variadic
Reduce Event.h and EventQueue.h using C++11
2019-07-15 15:29:17 +03:00
Seppo Takalo b22641ca18 Normalize line endings for IM880B startup files. 2019-07-15 14:56:22 +03:00
Kevin Bracey ed4bf5220e rtos: NULL -> nullptr
Some build errors seen with NULL not being defined. Rather than
add cstddef includes, switch to C++11 nullptr.
2019-07-15 10:13:50 +03:00
Kevin Bracey 7442da30f9 equeue - avoid Kernel::get_ms_count from IRQ
Kernel::get_ms_count is documented as not working from IRQ.

In RTOS builds it can return misleading answers - see
https://github.com/ARM-software/CMSIS_5/issues/625

In non-RTOS builds, it can trigger an assert, as it upsets the
sleep logic.

Modified code is still not ideal - could be improved further if
there was a fast path for "post now" that didn't bother looking
at timers (both at post time and dispatch time).
2019-07-15 10:13:50 +03:00
Martin Kojtal c98b0d0b03 VK_RZ_A1H: add mbed_get_a9_tick_irqn 2019-07-15 10:13:50 +03:00
Martin Kojtal 3f0a5281e0 SysTimer: irq Cortex A fix C linkage 2019-07-15 10:13:50 +03:00
Kevin Bracey ccf59f8e81 SysTimer: don't always hold deep sleep lock
Revert back to older behaviour where we hold deep sleep lock only while
timing a sleep. Previous version was a speed optimisation, but broke
some tests.
2019-07-15 10:13:50 +03:00
Kevin Bracey 77321ca79e CPU stats don't require low power ticker 2019-07-15 10:13:50 +03:00
Kevin Bracey c94d6a8cc7 Make events use RTOS API
Switch from CMSIS-RTOS to mbed C++ API, which are available in bare
metal build.

Other minor tidies, like removing unnecessary volatile.
2019-07-15 10:13:50 +03:00
Kevin Bracey a522dcfa0a Replace deprecated wait calls 2019-07-15 10:13:50 +03:00
Kevin Bracey fc8e8f67c6 Deprecate wait/wait_ms APIs 2019-07-15 10:13:50 +03:00
Kevin Bracey 04cb39da07 Minimal C thread API 2019-07-15 10:13:50 +03:00
Kevin Bracey 83b329cb71 RTOS API for bare metal
Provide partial RTOS API for bare metal builds - things that
can be done in a single threaded environment.

Allows more code to work in both RTOS and bare metal builds without
change, and in particular gives easy access to the ability to
efficiently wait for something occurring in interrupt.

Available in bare-metal:
* ThisThread
* osThreadFlagsSet to set flags on main thread (can be set from IRQ)
* EventFlags (can be set from IRQ)
* Semaphores (can be released from IRQ)
* Mutex (dummy implementation)

Not useful:
* ConditionVariable (could only be signalled from 2nd thread)
* RtosTimer (calls in a second thread context)
* Thread

Unimplemented:
* Mail, Queue, MemoryPool

Possible future work:
* ConditionVariableCS to act as IRQ signalled ConditionVariable
2019-07-15 10:13:50 +03:00
Kevin Bracey 38160035d4 rtos/mbed_lib.json: Correct indents 2019-07-15 10:13:49 +03:00
Kevin Bracey 89eba7303f Timed sleep rework 2019-07-15 10:13:49 +03:00
Kevin Bracey a1e1ab61a4 Switch SysTimer license to Apache 2019-07-15 10:13:49 +03:00
Kevin Bracey 20451082c1 Move SysTimer to platform, for non-RTOS use 2019-07-15 10:13:49 +03:00
Kevin Bracey 28b770510c CPU stats: strip more when disabled 2019-07-15 10:13:49 +03:00
Yuan Cao 6ed21ee1c0 Fixed serial_device IRQ infinite loop bug due to uint8_t overflowing 2019-07-13 00:05:25 -04:00
Evelyne Donnaes 2d6db332e6
Merge pull request #11010 from jeromecoutant/PR_ASYNCSPI
FPGA SPI: ASYNC issue
2019-07-12 16:34:42 +01:00
Kevin Bracey d53bd6120d
Merge pull request #10274 from kjbracey-arm/atomic_template
Add Atomic<T> template
2019-07-12 14:26:03 +03:00
Evelyne Donnaes 0f39f01595
Merge pull request #11027 from vmedcy/pr/cy-lwip
PSOC6: add LwIP configuration for Cypress boards
2019-07-12 11:22:11 +01:00
Evelyne Donnaes 22c82dcb9c
Merge pull request #10692 from vmedcy/pr/psoc6-hal
PSOC6: initial integration of Cypress HAL
2019-07-11 17:28:23 +01:00
Russ Butler 87c6a74a21 Fix FPGA CI Test Shield warnings
Fix warnings due to unused variables, comparison between signed and
unsigned. This patch also re-enables I2C asserts that were disabled
during early development.
2019-07-11 16:16:34 +01:00
Russ Butler 57d75538da Add a restricted peripheral list
Allow peripherals to be excluded from testing.
2019-07-11 16:08:33 +01:00
Volodymyr Medvid 579cd9a355 PSOC6: add LwIP configuration for Cypress boards 2019-07-11 15:47:38 +01:00
Arto Kinnunen 237ad40093
Merge pull request #10963 from devran01/pr/10888/fix
PSA TESTS: Include mbedtls/config.h before evaluating MBEDTLS_PSA_CRYPTO_C
2019-07-11 15:49:57 +03:00
Volodymyr Medvid b6524070eb PSOC6: TARGET_PSOC6_FUTURE doesn't implement DEVICE_I2CSLAVE 2019-07-11 15:43:25 +03:00
Evelyne Donnaes 7db0e83836
Merge pull request #11013 from tymoteuszblochmobica/revert-10938-iar
Revert "K64F, STM32F429: IAR linker scripts dynamic  heap fix"
2019-07-11 12:18:53 +01:00
Volodymyr Medvid adfac3c1f9 PSOC6: do not remove QSPI from FUTURE_SEQUANA targets
Since QSPi is not yet supported by base TARGET_PSOC6,
there is no need to remove the device label from
FUTURE targets that inherit from TARGET_PSOC6.

This will need to be reverted back once the QSPI support
is implemented for Cypress PSOC6 targets.
2019-07-11 12:51:52 +03:00
Volodymyr Medvid bab34cb467 PSOC6: cleanup DEVICE_QSPI mappings
Note: device_has: "QSPI" is still disabled for TARGET_PSOC6
(QSPI HAL implementation is incomplete).
2019-07-11 12:50:56 +03:00
Volodymyr Medvid 2524a67c38 Merge remote-tracking branch 'ARMmbed/master' into pr/psoc6-hal 2019-07-11 10:19:03 +01:00