STRUCT GPIO_IRQ_TYPE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct gpio_irq_type(9) β€” gpio irq configuration

okay bestie, so this is a page from the Kernel API Manual, and it's literally just a struct that holds how a gpio irq is configured. three little unsigned int fields, that's the whole vibe. let's get into it ✨


✨ NAME ✨

struct gpio_irq_type β€” gpio irq configuration πŸŽ€

basically: the lil bundle of settings that tells the kernel what kind of interrupt we're dealing with. no cap.


🌸 SYNOPSIS 🌸

struct gpio_irq_type {
    unsigned int trig_type;
    unsigned int edge_type;
    unsigned int logic_type;
 };

that's it. that's the struct. three unsigned int members, nothing hiding in there, we love a clean layout πŸ’–


πŸ¦‹ Members πŸ¦‹

  • trig_type β€” are we doing a level trigger or an edge trigger? that's the whole question this field answers πŸ‘‘
  • edge_type β€” single edge or both edge. (the page literally spells it sigle bestie, i'm not gonna lie to you πŸ™ˆ iconic typo, copying it verbatim anyway 🫢)
  • logic_type β€” positive trigger or negative trigger, pick your polarity πŸ’…

lowkey a vibe check note: every one of these is an unsigned int, so nobody's out here passing a negative number by accident. please don't. 😭

🌈 SEE ALSO 🌈

  • Kernel file ./drivers/pinctrl/pinctrl-equilibrium.h struct β€” the header where this whole situation lives, go look at it fr fr
  • eqbr_pin_bank(9) β€” the pin bank friend πŸ’œ
  • struct eqbr_gpio_ctrl(9) β€” the gpio controller struct, main character energy ⭐
  • struct eqbr_pinctrl_drv_data(9) β€” the pinctrl driver data struct, rounding out the squad 🌸

and that's a wrap! πŸŽ€ this page came to you straight out of ./drivers/pinctrl, dated October 2026 β€” you're welcome bestie, go configure some interrupts responsibly πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from