zephyr/tests/kernel/test_tickless/microkernel
Anas Nashif 60b18711f3 tests: remove duplicate kernel configs and usage of ARCH
Many test configs are the same, remove complexity and duplication by
using just one kernel config where applicable.

This removes the usage of ARCH which is a remnant from the days where
we had to specify the architecture of the board, the architecture is now
part of Kconfig and determined basded on the board configuration.

This will also make it easy adding new architectures to test cases without
having to add an architecture specific config file when it is actually not
needed, for example now that we will enable micro-kernel support on ARC.

Jira: ZEP-238
Change-Id: I143fa3c4629c58329cfeb0c761c7a896fc1ef63a
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-05-23 16:46:08 +00:00
..
src kinetis: reorganise soc directory using soc family 2016-04-18 21:24:58 +00:00
Makefile tests: move kernel tests to tests/ 2016-02-11 18:06:33 +00:00
README.txt tests: move kernel tests to tests/ 2016-02-11 18:06:33 +00:00
prj.mdef tests: move kernel tests to tests/ 2016-02-11 18:06:33 +00:00
prj_arm.conf power_mgmt: Make names consistent with new RFC 2016-03-26 14:35:11 -04:00
prj_x86.conf power_mgmt: Make names consistent with new RFC 2016-03-26 14:35:11 -04:00
testcase.ini tests: remove duplicate kernel configs and usage of ARCH 2016-05-23 16:46:08 +00:00

README.txt

Title: Tickless Idle Support

Description:

This test verifies the timing accuracy of the tickless idle feature.

The test first calibrates itself by repeatedly sleeping for 10 ticks with the
tickless idle feature disabled.  It then repeats this process with the tickless
idle feature enabled.  Lastly, it compares the average measured duration of
each approach and displays the result.  The tick timing is correct if the
'diff ticks' with tickless enabled matches the SLEEP_TICKS (10) setting in
the source.

The demonstration utilizes microkernel mutex APIs, timers and tickless
idle mode.

--------------------------------------------------------------------------------

Building and Running Project:

This microkernel project outputs to the console.  It can be built and executed
on QEMU as follows:

    make qemu

--------------------------------------------------------------------------------

Troubleshooting:

Problems caused by out-dated project information can be addressed by
issuing one of the following commands then rebuilding the project:

    make clean          # discard results of previous builds
                        # but keep existing configuration info
or
    make pristine       # discard results of previous builds
                        # and restore pre-defined configuration info

--------------------------------------------------------------------------------

Sample Output:

Tickless Idle Test
Calibrating TSC...
Calibrated time stamp period = 0x00000000163adc3a
Do the real test with tickless enabled
Going idle for 10 ticks...
start ticks     : 343
end   ticks     : 353
diff  ticks     : 10
diff  time stamp: 0x0000000018a69898
Cal   time stamp: 0x00000000163adc3a
variance in time stamp diff: 10 percent
===================================================================
PROJECT EXECUTION SUCCESSFUL