__irq_alloc_...eneric_chips(9)
π
__irq_alloc_...eneric_chips(9) β like, the kernel API manual, bestie β¨
okay so real talk, we're in the Kernel API Manual today and this one page is about one (1) extremely specific function whose name got truncated in the header because even the typesetter gave up π β the actual function is __irq_alloc_domain_generic_chips, and she is that girl. buckle up π
β¨ NAME β¨
__irq_alloc_domain_generic_chips β allocate generic chips for an irq domain π§
like, you're literally handing out chips to an irq domain. that's the whole vibe.
πΈ SYNOPSIS πΈ
int __irq_alloc_domain_generic_chips (struct irq_domain *d , int
irqs_per_chip , int num_ct , const char *name , irq_flow_handler_t
handler , unsigned int clr , unsigned int set , enum irq_gc_flags
gcflags );
she takes eight arguments and returns an int, no cap π copy it exactly, don't get creative with it.
π ARGUMENTS π
dβ the irq domain you're allocating chips for π«Ά like, whose chips are these? hers. these ones.irqs_per_chipβ how many interrupts each chip handles. and listen: max 32, that's a hard ceiling, do not test her πnum_ctβ the number ofirq_chip_typeinstances associated with this. yes, that's the whole description, she's a woman of few words πnameβ the name of the irq chip. name her something iconic πhandlerβ the default flow handler associated with these chips βclrβ theIRQ_*bits to clear in the mapping function π§Ήsetβ theIRQ_*bits to set in the mapping function βgcflagsβ generic chip specific setup flags. that'senum irq_gc_flagsenergy, iykyk π
ngl bestie, irqs_per_chip max is 32 and that's not a suggestion, that's the law π
π¦ SEE ALSO π¦
the kernel file is literally ./kernel/irq/generic-chip.c β that's the source of truth, go read her π
and then the whole friend group, in order, because we don't leave anyone out π
irq_gc_noop(9)irq_gc_mask_disable_reg(9)irq_gc_mask_set_bit(9)irq_gc_mask_clr_bit(9)irq_gc_unmask_enable_reg(9)irq_gc_ack_set_bit(9)irq_gc_ack_clr_bit(9)irq_gc_mask_disable_and_ack_set(9)irq_gc_eoi(9)irq_gc_set_wake(9)irq_alloc_generic_chip(9)irq_domain_alloc_generic_chips(9)irq_domain_remove_generic_chips(9)irq_get_domain_generic_chip(9)irq_setup_generic_chip(9)irq_setup_alt_chip(9)irq_remove_generic_chip(9)
okay that's the whole page, you ate that π go forth and allocate responsibly, mwah π
β xoxo, your girl from ./kernel/irq, October 2026, signing off on __irq_alloc_...eneric_chips(9) π
β¨π
π¦ 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