drivers/of/unittest-data/tests-interrupts.dtsi
Source file repositories/reference/linux-study-clean/drivers/of/unittest-data/tests-interrupts.dtsi
File Facts
- System
- Linux kernel
- Corpus path
drivers/of/unittest-data/tests-interrupts.dtsi- Extension
.dtsi- Size
- 2644 bytes
- Lines
- 114
- Domain
- Driver Families
- Bucket
- drivers/of
- Inferred role
- Driver Families: configuration, schema, or hardware description
- Status
- atlas-only
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
// SPDX-License-Identifier: GPL-2.0
/ {
testcase-data {
interrupts {
#address-cells = <1>;
#size-cells = <1>;
test_intc0: intc0 {
interrupt-controller;
#interrupt-cells = <1>;
};
test_intc1: intc1 {
interrupt-controller;
#interrupt-cells = <3>;
};
test_intc2: intc2 {
interrupt-controller;
#interrupt-cells = <2>;
};
test_intmap0: intmap0 {
#interrupt-cells = <1>;
#address-cells = <0>;
interrupt-map = <1 &test_intc0 9>,
<2 &test_intc1 10 11 12>,
<3 &test_intc2 13 14>,
<4 &test_intc2 15 16>;
};
test_intmap1: intmap1 {
#interrupt-cells = <2>;
/*
* #address-cells is required
*
* The property is not provided in this node to
* test that the code will properly handle
* this case for legacy .dts files.
*
* Not having #address-cells will result in a
* warning from dtc starting with
* version v1.6.1-19-g0a3a9d3449c8
* The warning is suppressed by adding
* -Wno-interrupt_map to the Makefile for all
* .dts files this include this .dtsi
#address-cells = <1>;
*/
interrupt-map = <0x5000 1 2 &test_intc0 15>;
};
intmap2 {
#interrupt-cells = <2>;
#address-cells = <0>;
interrupt-map = <1 11 &test_intc0 100>,
<2 22 &test_intc1 200 201 202>,
<3 33 &test_intc2 300 301>,
<4 44 &test_intc2 400 401>;
};
test_intc_intmap0: intc-intmap0 {
#interrupt-cells = <1>;
#address-cells = <1>;
interrupt-controller;
interrupt-map = <0x6000 1 &test_intc_intmap0 0x7000 2>;
};
interrupts0 {
interrupt-parent = <&test_intc0>;
Annotation
- Atlas domain: Driver Families / drivers/of.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.