Commit Graph

13725 Commits (1b222ac07f3e31097e90bfdd340436273f68dedc)

Author SHA1 Message Date
Jimmy Brisson 1b222ac07f Use OUTPUT_EXT in managed boot loader 2018-02-09 14:18:45 +00:00
Jimmy Brisson 51d424f3cc Use relative path to scatter for include path 2018-02-09 14:18:45 +00:00
Evan Hosseini 4a4891c60b ARM: ARMC6: Update scatter file shebang include directory 2018-02-09 14:18:45 +00:00
Evan Hosseini 76ccfc8f8f ARM: ARMC6: Copy headers along with the updated linker scatter file
* Need to copy headers into the build directory as well when also
  writing an updated linker scatter file to the build directory
2018-02-09 14:18:45 +00:00
Evan Hosseini d8edb99168 ARM: ARMC6: Fix for ARM linker script cpu formatting 2018-02-09 14:18:45 +00:00
Evan Hosseini ecdd776b09 ARM: ARMC6: Specify CPU for ARM scatter file preprocessor
Fixes #5796
2018-02-09 14:18:45 +00:00
Maciej Bocianski bec8d758fe Add FileHandle tests 2018-02-09 14:18:45 +00:00
Oren Cohen e54d069ba2 Update uvisor-tests.txt to disable EFM32 in Jenkins 2018-02-09 14:18:45 +00:00
Cruz Monrreal c65cd6b475 Added LED2 definition for compilation of tests 2018-02-09 14:18:45 +00:00
Christopher Haster 9ce49a8f82 Workaround for insufficient heap on IAR+MTB_xDOT_GT
We currently don't have a mechanism for selecting tests based on the
available ram/heap, so the best solution right now is to disable these
tests specifically for this target.
2018-02-09 14:18:45 +00:00
Ashok Rao 76329a7080 Adding MTB_MTS_XDOT as a new target 2018-02-09 14:18:45 +00:00
gorazd 82b6c51ba8 ff_lpc546xx: move property to parent 2018-02-09 14:18:44 +00:00
gorazd 5bdf231abe lpc546xx and ff_lpc546xx: create parent object MCU_LPC546XX 2018-02-09 14:18:44 +00:00
Kevin Bracey 5784c8aed7 Correct ConditionVariable ISR comments
No ConditionVariable methods are useable from ISR, due to the built-in
mutex and the requirement that the caller of notify holds the mutex.
2018-02-09 14:18:44 +00:00
Kevin Bracey 8f521a4743 Add Thread::wait_until
API is somewhat loose to cope with potential shift in the underlying
RTOS APIs.
2018-02-09 14:18:44 +00:00
Kevin Bracey f740ecea13 Add Semaphore::wait_until
Given the 64-bit timebase, add wait_until to Semaphore.

Naming is based on Thread::wait_until.

pthreads uses "timedwait", but that's not a good fit against our
existing wait() - pthreads only has an absolute-time wait, not relative.
2018-02-09 14:18:44 +00:00
Kevin Bracey 436301dc5e Add Mutex::trylock_until and trylock_for
Given the 64-bit timebase, add trylock_until to Mutex.

Naming is based on a combination of Mutex::trylock, Thread::wait_until,
and C++11 timed_mutex::try_lock_until.

pthreads and C11 use "timedlock", but that's not a good fit against our
existing trylock() and lock(timeout) - they have only absolute-time
waits, not relative.

To increase the similarity to C++11, add trylock_for - same parameters
as lock, but with the bool return value of trylock and trylock_until.

Add an assertion when convering status codes to booleans to check that
there are no non-timeout errors.
2018-02-09 14:18:44 +00:00
Kevin Bracey 029751db20 Add ConditionVariable::wait_until
Given the 64-bit timebase, add wait_until to ConditionVariable.

Move the timeout example to wait_until(), and give wait_for() an
alternative example, as it's no longer the best option for a
timeout.

Tidy up - remove the redundant RESUME_SIGNAL definition.
2018-02-09 14:18:44 +00:00
Kevin Bracey 866b669d6e Add Kernel::get_ms_count
Give C++ access to the RTOS's absolute timebase, reducing the need to
run private Timers and similar. Allows wait_until functionality, and
makes it easier to avoid time drift.

Place it in a new header and namespace in case we want more kernel
functions in future.

Try to cover over the breaking API change potentially upcoming in
CMSIS-RTOS 2.1.1, when it reduces the tick count from 64-bit to 32-bit.
(See https://github.com/ARM-software/CMSIS_5/issues/277)

Explicitly state that ticks are milliseconds in mbed OS, despite CMSIS
RTOS 2 permitting different tick rates.

See also https://github.com/ARMmbed/mbed-os/pull/3648 (wait_until
for condition variables) and
https://github.com/ARMmbed/mbed-os/issues/5378 (EventQueue should
use RTOS tick count).
2018-02-09 14:18:44 +00:00
Mahesh Mahadevan b137307757 NXP: Add support for MIMXRT1050_EVK
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-02-09 14:18:44 +00:00
jeromecoutant 4df67ef584 STM32 SPI ASYNC - Add FIFO flush before transfer 2018-02-09 14:18:44 +00:00
jeromecoutant a52d7553c3 STM32F7 SPI - add missing HAL files
ST_INTERNAL_REF 43358
2018-02-09 14:18:44 +00:00
bcostm d6e5fac49f STM32F7: move cache initialization 2018-02-09 14:18:44 +00:00
bcostm 11f629f4de Check cache before enabling it
The mbed_sdk_init can be called either during cold boot or during
application boot after bootloader has been executed.
In case the bootloader has already enabled the cache,
is is needed to not enable it again.
2018-02-09 14:18:44 +00:00
bcostm 846bd72068 NUCLEO_F767ZI: Add bootloader support 2018-02-09 14:18:44 +00:00
bcostm a79569977f BL NUCLEO_F746ZG: change scb->vector assignment 2018-02-09 14:18:43 +00:00
bcostm e8eb8bc8f6 BL NUCLEO_F746ZG: enable bootloader 2018-02-09 14:18:43 +00:00
bcostm 43c6f5b5b2 BL STM32746xG: Update scatter/link files 2018-02-09 14:18:43 +00:00
Brendan McDonnell 85d08b157a make _sbrk() WEAK so the user can override it, e.g. to make malloc() always use external memory 2018-02-09 14:18:43 +00:00
deepikabhavnani f9ec62882d Added macro: 1. string length and 2. variable argument count 2018-02-09 14:18:43 +00:00
amq 6a3c69488f EFM32: make peripherals conditional * MCUs within a family like EFM32GG can omit some peripherals, e.g. EFM32GG230 doesn't have UART * This commit adds a check to make them compilable, relevant mainly for custom boards 2018-02-09 14:18:43 +00:00
amq aa2cb58c79 VS Code exporter: do not overwrite existing (launch|settings|tasks).json 2018-02-09 14:18:43 +00:00
Jimmy Brisson 0376483157 Correct SW4STM32 supported check 2018-02-09 14:18:43 +00:00
Jimmy Brisson e7d29c6161 Force config resolution in gnuarmeclipse exporter 2018-02-09 14:18:43 +00:00
Jimmy Brisson b5577bde75 Move region adding to mbedToolchain 2018-02-09 14:18:43 +00:00
Jimmy Brisson f94e06151a Check that boot loader config works in libs 2018-02-09 14:18:43 +00:00
Jimmy Brisson 7d20c0adac Handle target overrides that have a path correctly 2018-02-09 14:18:43 +00:00
Jimmy Brisson c2d4e9b599 Configure boot loader after scanning 2018-02-09 14:18:43 +00:00
Jimmy Brisson 3610f91c0d Enable libraries to have boot loader configuration 2018-02-09 14:18:43 +00:00
bcostm bedc73d39e STM32 serial: add missing function declaration 2018-02-09 14:18:43 +00:00
bcostm 5f6ee5f6be STM32 serial: improve index assignment in serial_init 2018-02-09 14:18:43 +00:00
bcostm 82d7f9ff54 STM32 serial: improve irq index management for L0 devices 2018-02-09 14:18:43 +00:00
bcostm e6e1441fdc STM32 serial: improve irq index management for F0 devices 2018-02-09 14:18:43 +00:00
bcostm f5e76d38f3 STM32 serial: improve irq index management for L4 devices 2018-02-09 14:18:43 +00:00
bcostm 37738fec6e STM32 serial: improve irq index management for L1 devices 2018-02-09 14:18:43 +00:00
bcostm 32eff7d5da STM32 serial: improve irq index management for F7 devices 2018-02-09 14:18:43 +00:00
bcostm 19fd049d8f STM32 serial: improve irq index management for F3 devices 2018-02-09 14:18:42 +00:00
bcostm 2aadbb80df STM32 serial: improve irq index management for F2 devices 2018-02-09 14:18:42 +00:00
bcostm d01cfb1ca8 STM32 serial: coding style 2018-02-09 14:18:42 +00:00
bcostm 7cda4dd332 STM32 serial: improve irq index management for F1 devices 2018-02-09 14:18:42 +00:00