zephyr/samples/nanokernel/test/test_timer/src
Dirk Brandewie fce979ef3e init: Change _InitHardware() to be called from init system
Change the function signature of _InitHarware() function and rename
the function to a platform specific name now that it will be called
via a function pointer and not by name.

Call the platform *_init() function at PURE_INIT time.

Change-Id: I5168dfea81f406da135d491a2b4a24e8255f418a
Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
2016-02-05 20:14:37 -05:00
..
Makefile Use ccflags-y and asflags-y instead of EXTRA_CFLAGS 2016-02-05 20:14:14 -05:00
README init: Change _InitHardware() to be called from init system 2016-02-05 20:14:37 -05:00
timer.c Remove reference to nano_time_init() in sample projects 2016-02-05 20:14:37 -05:00

Starting a timer
 Case 1: Add to an empty timer list
 Case 2: Add to the end of the timer list (big tick value)
 Case 3: Add to the start of the timer list (small tick value)
 Case 4: Add to the middle of the timer list (medium tick value)

Stopping a timer
 No point to stop a non-existent timer
 Case 1: Stop one at the head of the list (nothing waiting on it)
 Case 2: Stop one at the end of the list (nothing waiting on it)
 Case 3: Stop one in the middle of the list (nothing waiting on it)
 Case 4: Stop the last in the list (nothing waiting on it)
 Case 5: Stop a timer that had a fiber waiting on it

Timer Expiry
 Case 1: Timer has expired
 Case 2: Timer has not expired
 Case 3: Wait for a timer to expire

Expired timers can use the nano_node_tick_get_32() and nano_node_tick_delta() routines
to check the results against the timer routines.

This test set does not yet test/verify nano_node_cycle_get_32()--that must still be
done.

APIs tested in this test set
============================

nano_timer_init   (implicitly done--called as part of platform init)
nano_fiber_timer_start
nano_task_timer_start
nano_fiber_timer_stop
nano_task_timer_stop
nano_fiber_timer_test
nano_fiber_timer_wait
nano_task_timer_test
nano_task_timer_wait

--------------------------------
nanoTimeInit (implicitly done)
nano_node_tick_get_32
nano_node_tick_delta