1Title: Test to verify advanced features of ARM Cortex-M interrupt handling.
2
3Description:
4This test suite verifies the behavior of CONFIG_ZERO_LATENCY_IRQS and
5CONFIG_DYNAMIC_DIRECT_INTERRUPTS at runtime (ARM Only)
6
7The first test verifies the behavior of CONFIG_DYNAMIC_DIRECT_INTERRUPTS
8at runtime. In particular, it tests that dynamic direct IRQs may be
9installed at run-time in the software interrupt table.
10Only for ARMv7-M and ARMv8-M Mainline targets.
11
12The second test verifies the behavior of CONFIG_ZERO_LATENCY_IRQS at runtime.
13In particular, it tests that IRQs configured with the IRQ_ZERO_LATENCY
14flag are assigned the highest priority in the system (and, therefore,
15cannot be masked-out by irq_lock()).
16Only for ARMv7-M and ARMv8-M Mainline targets.
17
18The third test verifies the behavior of the IRQ Target State API for
19TrustZone-M enabled Cortex-M Mainline CPUs.
20
21---------------------------------------------------------------------------
22
23Building and Running Project:
24
25This project outputs to the console.  It can be built and executed on QEMU as
26follows:
27
28    ninja/make run
29
30---------------------------------------------------------------------------
31
32Troubleshooting:
33
34Problems caused by out-dated project information can be addressed by
35issuing one of the following commands then rebuilding the project:
36
37    ninja/make clean    # discard results of previous builds
38                        # but keep existing configuration info
39or
40    ninja/make pristine # discard results of previous builds
41                        # and restore pre-defined configuration info
42
43---------------------------------------------------------------------------
44
45Sample Output:
46
47*** Booting Zephyr OS build zephyr-v2.1.0-358-g9ac0a8c10a2e  ***
48Running test suite arm_irq_advanced_features
49===================================================================
50starting test - test_arm_dynamic_direct_interrupts
51PASS - test_arm_dynamic_direct_interrupts
52===================================================================
53starting test - test_arm_zero_latency_irqs
54Available IRQ line: 57
55PASS - test_arm_zero_latency_irqs
56===================================================================
57starting test - test_arm_irq_target_state
58Available IRQ line: 93
59PASS - test_arm_irq_target_state
60===================================================================
61Test suite arm_irq_advanced_features succeeded
62===================================================================
63PROJECT EXECUTION SUCCESSFUL
64