__irq_resolve_mapping(9)
π __irq_resolve_mapping β¨
okay so this is the __irq_resolve_mapping(9) page from the Kernel API Manual, and bestie, it's literally a whole thing about finding your linux irq from a hw irq number. it's giving "short but iconic" β let's get into it π«Ά
πΈ NAME πΈ
__irq_resolve_mapping β Find a linux irq from a hw irq number.
like, that's the whole gig. you got a hardware number, you want the linux one. slay.
β¨ SYNOPSIS β¨
struct irq_desc * __irq_resolve_mapping (struct irq_domain *domain ,
irq_hw_number_t hwirq , unsigned int *irq );
π ARGUMENTS π
domainβ the domain owning this hardware interrupt, i.e. the main character that's in charge of this hw interrupt πhwirqβ the hardware irq number in that domain space, fr fr the raw oneirqβ optional pointer to return the Linux irq if required β no cap, it's optional, so you can pass it or not, your call π¦
π¦ DESCRIPTION π¦
Returns the interrupt descriptor. that's it, that's the sentence. periodt. π
like, genuinely, it's just handing you back a struct irq_desc *. lowkey obsessed with how unbothered this description is.
π SEE ALSO π
the Kernel file ./kernel/irq/irqdomain.c and honestly a whole friend group of functions β here's the full squad, no one left behind π
__irq_domain_alloc_fwnode(9)irq_domain_free_fwnode(9)irq_domain_instantiate(9)irq_domain_remove(9)irq_domain_create_simple(9)irq_find_matching_fwspec(9)irq_set_default_domain(9)irq_get_default_domain(9)irq_create_direct_mapping(9)irq_create_mapping_affinity(9)irq_dispose_mapping(9)irq_domain_xlate_onecell(9)irq_domain_xlate_twocell(9)irq_domain_xlate_twothreecell(9)irq_domain_xlate_onetwocell(9)irq_domain_translate_onecell(9)irq_domain_translate_twocell(9)irq_domain_translate_twothreecell(9)irq_domain_reset_irq_data(9)irq_domain_disconnect_hierarchy(9)irq_domain_get_irq_data(9)irq_domain_set_hwirq_and_chip(9)irq_domain_set_info(9)irq_domain_free_irqs_common(9)irq_domain_free_irqs_top(9)__irq_domain_alloc_irqs(9)irq_domain_push_irq(9)irq_domain_pop_irq(9)irq_domain_free_irqs(9)irq_domain_alloc_irqs_parent(9)irq_domain_free_irqs_parent(9)irq_domain_activate_irq(9)irq_domain_deactivate_irq(9)
and that's the vibe check, bestie β this page is from ./kernel/irq, dated October 2026, and the whole thing is filed under __irq_resolve_mapping(9) in case you need to find it again π mwah, go resolve some mappings π§ββοΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms