zephyr/tests/kernel/test_context/src
Yannis Damigos ee587d08a8 tests: kernel: test_context: reduce ram requirements
Reduces the amount of memory allocated for fiber's stack.
This permits the test_context to compile on boards like
nucleo-f103rb. Sanitycheck script passes all test for
test-context.

This patch was verified on the emulated platforms and not
against real hardware boards.

Change-Id: I219f63063ee2dca5b0326e25141d8b37f4cd1d74
Signed-off-by: Yannis Damigos <giannis.damigos@gmail.com>
2016-03-31 23:17:52 +00:00
..
context.c tests: kernel: test_context: reduce ram requirements 2016-03-31 23:17:52 +00:00
Makefile tests: kernel: test_context: reduce ram requirements 2016-03-31 23:17:52 +00:00
README tests: move kernel tests to tests/ 2016-02-11 18:06:33 +00:00

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

fiber_fiber_start
  - start a helper fiber to help with fiber_yield() tests

task_fiber_start
  - start a fiber to test fiber related functionality

fiber_yield
  - Called by a higher priority fiber when there is another fiber
  - Called by an equal priority fiber when there is another fiber
  - Called by a lower priority fiber when there is another fiber

sys_thread_self_get
  - Called from an ISR (interrupted a task)
  - Called from an ISR (interrupted a fiber)
  - Called from a task
  - Called from a fiber

sys_execution_context_type_get
  - Called from an ISR that interrupted a task
  - Called from an ISR that interrupted a fiber
  - Called from a task
  - Called from a fiber

nano_cpu_idle
  - CPU to be woken up by tick timer.  Thus, after each call, the tick count
    should have advanced by one tick.

irq_lock
  - 1. Count the number of calls to sys_tick_get_32() before a tick expires.
  - 2. Once determined, call sys_tick_get_32() many more times than that
       with interrupts locked.  Check that the tick count remains unchanged.

irq_unlock
  - Continuation irq_lock: unlock interrupts, loop and verify the tick
    count changes.

irq_offload
  - Used when triggering an ISR to perform ISR context work.

nanoCpuExcConnect
  - Used during nanokernel object initialization.  Verified by triggering a
    divide-by-zero exception.  The handler skips us over the offending
    instruction.

irq_enable
irq_disable
  - Use these routines to disable and enable timer interrupts so that they can
    be tested in the same way as irq_lock() and irq_unlock().