zephyr/samples/microkernel/test/test_task_irq
Andrew Boie 2a1ae3f436 ARM: ARC: put sw_isr_table in ROM by default
We can save a great deal of RAM this way, it only needs to be
in RAM if dynamic interrupts are in use.

At some point this config option broke, probably when static
interrupts were introduced into the system.

To induce build (instead of runtime) errors when irq_connect_dynamic()
is used without putting the table in RAM, the dynamic interrupt
functions are now conditionally compiled.

Change-Id: I4860508746fd375d189390163876c59b6c544c9a
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-05 20:25:21 -05:00
..
src microkernel: remove task_irq_free() API 2016-02-05 20:25:21 -05:00
Makefile Use BOARD instead of PLATFORM_CONFIG 2016-02-05 20:25:11 -05:00
README.txt Update Title in sample project README.txt files 2016-02-05 20:15:21 -05:00
prj.mdef Rename VPF files to use MDEF file extension 2016-02-05 20:14:15 -05:00
prj_arm.conf ARM: ARC: put sw_isr_table in ROM by default 2016-02-05 20:25:21 -05:00
prj_x86.conf First commit 2015-04-10 16:44:37 -07:00
testcase.ini initial commit for next-gen sanity checks 2016-02-05 20:14:42 -05:00

README.txt

Title: Task Level Interrupt Handling

Description:

This test exercises the APIs of the task level interrupt handling feature.

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

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:

Starting task level interrupt handling tests
===================================================================
IRQ object 0 using IRQ8 allocated
IRQ object 1 using IRQ14 allocated

IRQ object 2 using IRQ32 allocated
IRQ object 3 using IRQ34 allocated

Generating interrupts for all allocated IRQ objects...
Received event for IRQ object 0
Received event for IRQ object 1
Received event for IRQ object 2
Received event for IRQ object 3

Attempt to allocate an IRQ object that
is already allocated by another task...
Re-allocation of IRQ object 3 prevented

Attempt to allocate an IRQ that
is already allocated by another task...
Re-allocation of IRQ34 prevented

Attempt to free an IRQ object...
IRQ object 2 freed
===================================================================
PROJECT EXECUTION SUCCESSFUL