Lines Matching refs:irq_domain
2 The irq_domain Interrupt Number Mapping Library
32 The irq_domain library adds a mapping between hwirq and IRQ numbers on
33 top of the irq_alloc_desc*() API. An irq_domain to manage the mapping
37 irq_domain also implements a translation from an abstract struct
43 irq_domain Usage
45 struct irq_domain could be defined as an irq domain controller. That
57 unique identifier for an interrupt controller, the irq_domain code
60 An interrupt controller driver creates and registers a struct irq_domain
63 function will return a pointer to the struct irq_domain on success. The
67 In most cases, the irq_domain will begin empty without any mappings
68 between hwirq and IRQ numbers. Mappings are added to the irq_domain
69 by calling irq_create_mapping() which accepts the irq_domain and a
99 Types of irq_domain Mappings
133 The irq_domain maintains a radix tree map from hwirq numbers to Linux
228 hardware architecture, an irq_domain data structure is built for each
230 When building irq_domain hierarchy, the irq_domain near to the device is
231 child and the irq_domain near to CPU is parent. So a hierarchy structure
234 CPU Vector irq_domain (root irq_domain to manage CPU vectors)
237 Interrupt Remapping irq_domain (manage irq_remapping entries)
240 IOAPIC irq_domain (manage IOAPIC delivery entries/pins)
242 There are four major interfaces to use hierarchy irq_domain:
253 The following is needed to support hierarchy irq_domain:
255 1) The :c:member:`parent` field in struct irq_domain is used to
256 maintain irq_domain hierarchy information.
259 irq_data is used to store irq_domain pointer and hardware irq
262 struct irq_domain_ops to support hierarchy irq_domain operations.
264 With the support of hierarchy irq_domain and hierarchy irq_data ready,
265 an irq_domain structure is built for each interrupt controller, and an
266 irq_data structure is allocated for each irq_domain associated with an
269 For an interrupt controller driver to support hierarchy irq_domain, it
278 irq_domain_ops.unmap(). They are unused with hierarchy irq_domain.
280 Note the hierarchy irq_domain is in no way x86-specific, and is