Commit Graph

11075 Commits (745a1ed17d9ab31debee241ea2016d712bc6b66c)

Author SHA1 Message Date
Jaeden Amero 24c60f6cc7 RTX5: uVisor: Extend thread control block with context
OsEventObserver objects expect a context to be maintained per thread on
their behalf. Add this context to the thread control block and extend
the thread creation functions with the ability to supply a context.
2017-05-30 18:53:38 +01:00
Jaeden Amero 756e0cae99 RTX5: uVisor: Add OsEventObserver
Add the OsEventObserver mechanism. A client interested in receiving
notifications on certain OS events can register to receive notifications
with osRegisterForOsEvents. This is useful for clients like the secure
memory allocator, which observes thread switching events in order to
swap in and out different memory allocator objects.
2017-05-30 18:53:38 +01:00
Jaeden Amero 25021f271a RTX5: uVisor: Defer to uVisor for SVCall priority
Only set the SVCall priority if uVisor is not present. If uVisor is
present, keep using whatever priorities it has already set up.
2017-05-30 18:53:37 +01:00
Bartek Szatkowski a9a29a4529 Pull in CMSIS 5 files
Pull in unmodified CMSIS5 files from the repository
https://github.com/ARM-software/CMSIS_5.git from the commit
c1b4232f4a98275dd79ebc99cf9b5da5053def4d.

The files were copied as shown below with source->dest_dir.
CMSIS_5/CMSIS/Core/Include/core_*.h -> mbed-os/cmsis/
CMSIS_5/CMSIS/Core_A/Include/core_*.h -> mbed-os/cmsis/
CMSIS_5/CMSIS/DSP/Include/arm_math.h -> mbed-os/cmsis/
CMSIS_5/CMSIS/Core/Include/tz_context.h -> mbed-os/cmsis/
CMSIS_5/CMSIS/Core/Include/cmsis_compiler.h -> mbed-os/cmsis/TARGET_CORTEX_M/
CMSIS_5/CMSIS/Core/Include/cmsis_arm*.h -> mbed-os/cmsis/TARGET_CORTEX_M/TOOLCHAIN_ARM/
CMSIS_5/CMSIS/Core/Include/cmsis_gcc*.h -> mbed-os/cmsis/TARGET_CORTEX_M/TOOLCHAIN_GCC/
CMSIS_5/CMSIS/Core_A/Include/cmsis_compiler.h -> mbed-os/cmsis/TARGET_CORTEX_A/
CMSIS_5/CMSIS/Core_A/Include/cmsis_arm*.h -> mbed-os/cmsis/TARGET_CORTEX_A/TOOLCHAIN_ARM/
CMSIS_5/CMSIS/RTOS2/RTX/Library/cmsis_os1.c -> mbed-os/rtos/rtx/
CMSIS_5/CMSIS/RTOS2/Include/cmsis_os2.h -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/
CMSIS_5/CMSIS/RTOS2/RTX/Config/* -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/
CMSIS_5/CMSIS/RTOS2/RTX/Include1/* -> mbed-os/rtos/rtx/
CMSIS_5/CMSIS/RTOS2/RTX/Include/* -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/
CMSIS_5/CMSIS/RTOS2/RTX/Source/rtx_* -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/
CMSIS_5/CMSIS/RTOS2/RTX/Source/core_cm.h -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/
CMSIS_5/CMSIS/RTOS2/RTX/Source/ARM/irq_cm0.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M0/TOOLCHAIN_ARM/
CMSIS_5/CMSIS/RTOS2/RTX/Source/GCC/irq_cm0.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M0/TOOLCHAIN_GCC/
CMSIS_5/CMSIS/RTOS2/RTX/Source/IAR/irq_cm0.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M0/TOOLCHAIN_IAR/
CMSIS_5/CMSIS/RTOS2/RTX/Source/ARM/irq_cm0.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M0P/TOOLCHAIN_ARM/
CMSIS_5/CMSIS/RTOS2/RTX/Source/GCC/irq_cm0.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M0P/TOOLCHAIN_GCC/
CMSIS_5/CMSIS/RTOS2/RTX/Source/IAR/irq_cm0.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M0P/TOOLCHAIN_IAR/
CMSIS_5/CMSIS/RTOS2/RTX/Source/ARM/irq_cm3.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M3/TOOLCHAIN_ARM/
CMSIS_5/CMSIS/RTOS2/RTX/Source/GCC/irq_cm3.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M3/TOOLCHAIN_GCC/
CMSIS_5/CMSIS/RTOS2/RTX/Source/IAR/irq_cm3.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_M3/TOOLCHAIN_IAR/
CMSIS_5/CMSIS/RTOS2/RTX/Source/ARM/irq_cm4f.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_RTOS_M4_M7/TOOLCHAIN_ARM/
CMSIS_5/CMSIS/RTOS2/RTX/Source/GCC/irq_cm4f.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_RTOS_M4_M7/TOOLCHAIN_GCC/
CMSIS_5/CMSIS/RTOS2/RTX/Source/IAR/irq_cm4f.s -> mbed-os/rtos/rtx2/TARGET_CORTEX_M/TARGET_RTOS_M4_M7/TOOLCHAIN_IAR/
2017-05-30 18:53:37 +01:00
Russ Butler fd233778db Remove RTOS and CMSIS files
Remove the RTOS and CMSIS files in preperation for CMSIS 5. Note that
the RTOS heap ad stack test is left since this is still applicable to
RTX5. This file can be found here:
rtos\rtx\TARGET_CORTEX_M\TESTS\memory\heap_and_stack\main.cpp
2017-05-30 18:53:37 +01:00
Anna Bridge 1a37ea608a Merge pull request #4393 from 0xc0170/fix_race_test_single
race tests: fix unsupported condition
2017-05-30 16:59:01 +01:00
Anna Bridge 45b4d41bbd Merge pull request #4329 from adustm/can_sync_error
Fix for #3863: STM Check can sync error
2017-05-30 16:52:09 +01:00
Anna Bridge 9c6a068d48 Merge pull request #4324 from monkiineko/master
STM32F3: Remove dependence upon a specific flash vector table location
2017-05-30 16:50:45 +01:00
Anna Bridge ddc015fb6e Merge pull request #4303 from nvlsianpu/nrf52840_iar
enable iar exporter for nRF52840
2017-05-30 16:45:25 +01:00
Martin Kojtal a7e48f9bce mbed: version macros are not defined on master
Remove mbed OS and mbed 2 version macros. As master can break anytime (should
not break but can happen and shall be expected that there are changes that might affect the bleeding edge developers), there is no remedy for protecting
the sw via macros (either using some special versions, etc). If it is not
defined, means it is developed version of mbed OS/mbed 2 and it is up to a user
to track changes.

Any release of mbed OS 5 and mbed 2 contains these version macros. Thus won't break anything.
2017-05-30 10:45:30 +01:00
Laurent MEUNIER eeb9672387 STM32: Check TIM_AUTORELOAD_PRELOAD_DISABLE
F2 family also require that TIM_AUTORELOAD_PRELOAD_DISABLE is set,
otherwise the field could have undefined value from the stacj and may
lead to undefined behavior.

The error was found using USE_FULL_ASSERT HAL option.

Rather than adding F2 to the list of family, let's set this parameter for
any family where TIM_AUTORELOAD_PRELOAD_DISABLE applies.
2017-05-29 13:48:29 +02:00
Laurent MEUNIER 8576993a1a Introduce stm32_assert.h for MBED port
When we want to activate USE_FULL_ASSERT macro in STM32 CUBE, there is a
need to have the assert map to MBED.

The easiest way to have this definition in a single place for all STM32
HAL and LL files using it, is to add a specific header file where the
porting to MBED is done.
2017-05-29 13:48:29 +02:00
Laurent MEUNIER 5b510a35a6 F2 CUBE V1.6.0
This PR updates STM32 Cube SDK to
- HAL V1.2.1
- LL V1.2.1
- CMSIS 2.2.0
2017-05-29 13:48:29 +02:00
adustm 6770678811 Fix another typo 2017-05-29 10:24:03 +02:00
adustm 795bfd2288 Fix coding style 2017-05-29 10:24:03 +02:00
adustm b99ccf65bd Add timeout also on the 1st while loop 2017-05-29 10:24:03 +02:00
adustm 9a1d05551b Optimize the use of the status value 2017-05-29 10:24:03 +02:00
adustm 897625cc96 Give access to HAL_GetTick function 2017-05-29 10:24:03 +02:00
adustm 52d38a1be0 Handle can_frequency sync error
add a timeout + return an error message
2017-05-29 10:24:03 +02:00
Sam Grove 3122abee84 Merge pull request #4230 from jamike/USBHostMSD_BockDevice
Usb host msd block device
2017-05-26 17:19:07 -05:00
Sam Grove 2561e0bff4 Merge pull request #4299 from jeromecoutant/PULL_REQUEST_CUBE_UPDATE_F4_V1.16.0
STM32F4 cube update from v1.12.0 to v1.16.0
2017-05-26 17:13:08 -05:00
Sam Grove 92e661b3c0 Merge pull request #4328 from nvlsianpu/remove_nrfsdk13_ble
Remove unwanted (and unused anymore) NRF5_SDK13 BLE port
2017-05-26 17:10:24 -05:00
Sam Grove 704ffd7010 Merge pull request #4331 from theotherjimmy/depend-on-profile
Have objects depend on their respective compiler invocations
2017-05-26 17:06:23 -05:00
Sam Grove ede77621d4 Merge pull request #4332 from yogpan01/master
Fix for blockwise observation failure
2017-05-26 17:03:17 -05:00
Sam Grove ef7ab92cb8 Merge pull request #4345 from ARMmbed/nanostack_update
Nanostack update
2017-05-26 17:01:29 -05:00
Sam Grove 2500ab03f2 Merge pull request #4351 from jeromecoutant/PULL_REQUEST_CUBE_UPDATE_L4_V1.8.0
STM32L4 cube update from v1.5.0 to v1.8.0
2017-05-26 16:58:37 -05:00
Sam Grove 73d1745e19 Merge pull request #4382 from AndersLundgren/patch-1
Update cmain.S license
2017-05-26 16:56:50 -05:00
Sam Grove c74013e932 Merge pull request #4383 from snelson-senet/master
#4354 Fix MOTE_L152RC GPIO Write
2017-05-26 16:27:25 -05:00
Sam Grove d11289b576 Merge pull request #4165 from adustm/can_init
fix #3863 Add an mbed API that allows the init of the CAN at the bus frequency
2017-05-26 10:45:19 -05:00
Sam Grove 58e88813a9 Merge pull request #4282 from kl-cruz/FlashAPI_nRF52840
Flash api nRF52840
2017-05-26 10:31:05 -05:00
Sam Grove 049402c39f Merge pull request #4315 from theotherjimmy/thinkberg-master
Add support for ubirch boards
2017-05-26 10:26:40 -05:00
Sam Grove cb61fc5f81 Merge pull request #4333 from artokin/thread_interface_timeout
Adjust Thread interface connect timeout
2017-05-26 10:23:28 -05:00
Sam Grove 6a2d1bf870 Merge pull request #4340 from karsev/thread_med_support
Thread med support
2017-05-26 10:22:10 -05:00
Sam Grove 2e5ba49b59 Merge pull request #4395 from theotherjimmy/fix-uvision-support
Allow generic core exports to UVision
2017-05-26 10:20:33 -05:00
Jimmy Brisson 598cbdf023 Merge pull request #4381 from janjongboom/vscode-intellisense-engine
Fix vscode intellisense engine to 'Tag Parser'
2017-05-25 15:06:54 -05:00
Jimmy Brisson 4d1a4a41fa Fix Uvision supported check
Should now allow for generic targets
2017-05-25 15:01:20 -05:00
Christopher Haster 3ee77e36f7 FAT: Fixed volume count check when formatted without MBR
This saves 64 blocks (32KB when used with 512B blocks) and drops
the minimum storage size from 64KB to 32KB.
2017-05-25 14:24:17 -05:00
Christopher Haster e352f1b7f8 k64f: Added SPI block write using DSPI_MasterTransferBlocking
performance improvements:
naive block writes    3.997Mbps
DSPI block writes    17.809Mbps
2017-05-25 12:08:39 -05:00
Christopher Haster c1de19e49e spi: Added default spi_master_block_write implementation to all targets
There is an easy default implementation of spi_master_block_write that
just calls spi_master_write in a loop, so the default implementation
of spi_master_block_write has been added to all targets.
2017-05-25 12:04:58 -05:00
Christopher Haster 31bf0d5099 spi: Added block-level SPI writes at the HAL level
Poking the block-level SPI writes through the HAL level gives more
freedom to targets to improve SPI transaction speed.
2017-05-25 12:04:58 -05:00
Christopher Haster 58491aa244 spi: Added block-level SPI writes to the C++ api
virtual int write(const char *tx_buffer, int tx_length,
            char *rx_buffer, int rx_length);

The main benefit of block-level SPI writes is the performance
improvement from not acquiring a mutex lock between each byte sent on
the SPI bus. The block write may also be poked through the hal level for
additional speed improvements.
2017-05-25 12:04:45 -05:00
Martin Kojtal 7aea3bc43e race tests: fix unsupported condition
Should be true if single thread is defined, then its not
supported.
2017-05-25 14:47:28 +01:00
Jimmy Brisson 4d985eae3a Merge pull request #4385 from bridadan/examples_choose_source
Allow examples to specify which repo source to use for testing
2017-05-24 18:52:50 -05:00
Christopher Haster 3f92a15960 FAT: Added support for multiple active filesystems
- Increased _VOLUMES to 4
- Fixed a few issues in the FATFileSystem's _fsid
- Added tests for multiple partitions of fatfs
2017-05-24 11:18:47 -05:00
Brian Daniels 3966139cd7 Allowing examples to specify which repo source to use for testing.
They can pick from either the mbed developer site or the GitHub
repository.
2017-05-24 11:10:49 -05:00
Shaun Nelson 30579e8131 4354 Fix MOTE_L152RC GPIO Write
Add #define GPI_IP_WITHOUT_BRR
2017-05-24 11:37:15 -04:00
Martin Kojtal 186f406c24 Merge pull request #4366 from theotherjimmy/dedupe-nordic
Move duplicated analogin and pwmout to NRF52 directory
2017-05-24 13:30:27 +01:00
AndersLundgren 0167cbde31 Update cmain.S 2017-05-24 13:23:26 +02:00
Jan Jongboom 1b0d7ee120 Fix vscode intellisense engine to 'Tag Parser' 2017-05-24 10:56:45 +01:00
Martin Kojtal 463549331b Merge pull request #4367 from theotherjimmy/reduce-heap-block-device
Reduce size of heap block device test
2017-05-24 09:18:03 +01:00