mbed-os/rtos/TARGET_CORTEX
Kevin Bracey 0d12800b9f wait_us optimization
As the timer code became more generic, coping with initialization on
demand, and variable width and speed us_ticker_api implementations,
wait_us has gradually gotten slower and slower.

Some platforms have reportedly seen overhead of wait_us() increase from
10µs to 30µs. These changes should fully reverse that drop, and even
make it better than ever.

Add fast paths for platforms that provide compile-time information about
us_ticker. Speed and code size is improved further if:

* Timer has >= 2^32 microsecond range, or better still is 32-bit 1MHz.
* Platform implements us_ticker_read() as a macro
* Timer is initialised at boot, rather than first use

The latter initialisation option is the default for STM, as this has
always been the case.
2019-07-11 11:40:54 +01:00
..
TOOLCHAIN_ARM_MICRO microlib support: Specify compiler version unable to build without the fix 2019-07-11 11:40:53 +01:00
TOOLCHAIN_ARM_STD ISR_Stack_start/size defines are not needed, use linker file defines 2019-02-19 15:49:49 -06:00
TOOLCHAIN_GCC_ARM Fix GCC _sbrk allocation 2019-02-19 15:49:49 -06:00
TOOLCHAIN_IAR Fix single-threaded apps for IAR v8 builds 2019-03-08 15:33:04 -06:00
rtx4 CMSIS/RTX: Patch RTX4 to preserve osThreadDef compatibility 2019-04-10 14:41:48 +03:00
rtx5 CMSIS/RTX: Pre-processor defines used for assembly 2019-04-10 14:42:56 +03:00
SysTimer.cpp SysTimer: default to us ticker if lp ticker is unavailable 2019-05-16 16:14:26 +01:00
SysTimer.h SysTimer: default to us ticker if lp ticker is unavailable 2019-05-16 16:14:26 +01:00
mbed_boot.c wait_us optimization 2019-07-11 11:40:54 +01:00
mbed_boot.h Define heap/stack start and size based on linker script symbols for ARM and GCC_ARM 2019-01-08 15:32:01 +01:00
mbed_rtos1_types.h rtos: add spdx license 2018-11-28 10:39:52 +00:00
mbed_rtos_rtx.c Call psa_spm_init() before staring the NS core 2019-04-29 16:42:33 +03:00
mbed_rtos_storage.h mem pool size: Fix calculation of memory pool size for portability 2019-07-11 11:40:53 +01:00
mbed_rtx_conf.h Allow target or application level definition of extra TICKLESS stack size 2019-07-11 11:40:53 +01:00
mbed_rtx_handlers.c Don't trap RTX errors or mutex errors during errors 2019-04-15 11:29:04 +03:00
mbed_rtx_idle.cpp mbed_rtx_idle: fix ticker macro checks 2019-05-16 17:13:18 +01:00