ENUM EINT_TYPE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum eint_type β€” a whole vibe check on external interrupt types

okay bestie, so this page is from the Kernel API Manual, manual section 9 (kernel API stuff, iykyk) ✨ and it's literally all about enum eint_type β€” the possible external interrupt types. it's giving "small enum, big responsibilities" πŸŽ€


✨ SYNOPSIS ✨

like, here's the whole thing, and yes every constant matters:

enum eint_type {
    EINT_TYPE_NONE ,
    EINT_TYPE_GPIO ,
    EINT_TYPE_WKUP ,
    EINT_TYPE_WKUP_MUX

};

🌸 Constants 🌸

four constants, no more no less, let's go:

  • EINT_TYPE_NONE β€” this bank literally does not support external interrupts at all. not a single one. it's giving "i'm just here for the vibes" 😭
  • EINT_TYPE_GPIO β€” this bank supports external gpio interrupts πŸ¦‹
  • EINT_TYPE_WKUP β€” this bank supports external wakeup interrupts πŸ’œ
  • EINT_TYPE_WKUP_MUX β€” this bank supports multiplexed external wakeup interrupts ✨ (yes, multiplexed, we love a mux moment)

πŸ‘‘ Description πŸ‘‘

so here's the lore 🫢 the Samsung GPIO controller groups all the available pins into banks. and the pins in a pin bank can support:

  • external gpio interrupts, or
  • external wakeup interrupts, or
  • no interrupts at all

periodt. that's the whole menu πŸ“

and from a software perspective, the only difference between external gpio interrupts and external wakeup interrupts is that wakeup interrupts can additionally wake up the system if it's in a suspended state πŸ”₯ like, that's it, that's the flex.


πŸ¦‹ SEE ALSO πŸ¦‹

go read the kernel file ./drivers/pinctrl/samsung/pinctrl-samsung.h β€” it's the main character of this whole saga πŸ“– and then check out its friends:

  • enum pincfg_type(9)
  • struct samsung_pin_bank_type(9)
  • struct samsung_pin_bank_data(9)
  • struct samsung_pin_bank(9)
  • struct samsung_retention_data(9)
  • struct samsung_pin_ctrl(9)
  • struct samsung_pinctrl_drv_data(9)
  • struct samsung_pinctrl_of_match_data(9)
  • struct samsung_pin_group(9)
  • struct samsung_pmx_func(9)

ngl bestie, if you're poking at pin banks and interrupts, read the whole list. iykyk πŸ’…

and that's the tea β˜• this page lives in ./drivers/pinctrl/samsung and the doc itself is dated October 2026 β€” slay, see you in the future πŸ’–πŸ§šπŸŒˆ

πŸ“¦ where this page comes from