mbed-os/TESTS/mbed_hal
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
..
common_tickers Fix Greentea test common_tickers failed 2018-09-18 10:57:14 +08:00
common_tickers_freq Disable time drifting test cases. 2019-07-11 11:40:51 +01:00
crc crc test: manual fix cases 2018-08-03 11:24:31 +01:00
critical_section Fix GREENTEA_SETUP() call in not time drifting tests. 2019-07-11 11:40:51 +01:00
flash/functional_tests FLASH test: skip test if test region overlaps code 2019-01-04 16:50:54 +01:00
gpio Add GPIO NC test 2019-05-02 16:12:21 +03:00
lp_ticker Fix tests to work with LPTICKER_DELAY_TICKS 2018-08-17 11:58:55 -05:00
minimum_requirements tests: fix coding style 2018-11-08 08:54:34 +00:00
mpu Test MPU is enabled by init 2018-12-10 16:45:30 +02:00
pinmap Add a sanity check test for pinmaps 2019-02-08 09:10:50 -06:00
qspi hal_qspi_test: undo buggy code 2019-07-11 11:39:48 +01:00
rtc Update deep sleep lock check in tests 2018-08-17 09:29:41 -05:00
rtc_reset tests: astyle fix 2018-08-03 10:23:38 +01:00
rtc_time rtc time test: fix coding style 2018-11-15 07:20:09 +00:00
rtc_time_conv tests: astyle fix 2018-08-03 10:23:38 +01:00
sleep tests-mbed_hal-sleep: add exception for STM LPTIM targets. 2019-07-11 11:40:52 +01:00
sleep_manager Tests: SleepManager: Fix test_check for NRF5X 2019-07-11 11:40:53 +01:00
sleep_manager_racecondition Clean up Thread deprecation warnings 2018-10-12 14:57:13 +03:00
spm Exclude mbed-hal-spm test for TrustZone chips 2019-07-11 11:39:48 +01:00
stack_size_unification Added missing astyle corrections for TESTS/mbed_hal/* 2019-03-20 12:57:36 -05:00
ticker Add test for ticker suspend and resume 2018-08-17 09:29:40 -05:00
trng Initialize platform in trng test 2019-02-18 11:43:32 +02:00
us_ticker wait_us optimization 2019-07-11 11:40:54 +01:00