zephyr/samples/nanokernel/test/test_context/src
Javier B Perez Hernandez f7fffae8aa Change BSD-3 licenses to Apache 2
Change all the Intel and Wind River code license from BSD-3 to Apache 2.

Change-Id: Id8be2c1c161a06ea8a0b9f38e17660e11dbb384b
Signed-off-by: Javier B Perez Hernandez <javier.b.perez.hernandez@linux.intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2016-02-05 20:24:29 -05:00
..
context.c Change BSD-3 licenses to Apache 2 2016-02-05 20:24:29 -05:00
Makefile makefile: remove quotes from platform path 2016-02-05 20:24:19 -05:00
README clarify use of term 'context' 2016-02-05 20:15:27 -05: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 nano_tick_get_32() before a tick expires.
  - 2. Once determined, call nano_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_connect
  - Used during nanokernel object initialization.  Verified 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().