pch_vbus_gpio_irq(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… pch_vbus_gpio_irq β€” Kernel API Manual ✨

okay so bestie, buckle up πŸŽ€ this is a page straight out of the Kernel API Manual, and it's about one tiny little function that handles an interrupt when VBUS changes its whole vibe. it's giving "small function, big responsibility," and honestly? iconic. 🫢


🌸 NAME

pch_vbus_gpio_irq β€” the IRQ handler for the GPIO interrupt that fires when VBUS changes, no cap πŸ’…


✨ SYNOPSIS

irqreturn_t pch_vbus_gpio_irq (int irq , void *data );

πŸ¦‹ ARGUMENTS

  • irq β€” the interrupt request number. yes, it's just... the number of the interrupt request. that's the whole thing πŸŽ€
  • data β€” a reference to the device structure. iykyk β€” it's your ticket back to the device that owns all this 🫢

🧚 DESCRIPTION

so here's the tea β˜• β€” the return codes are the whole personality of this section, and there are exactly two of them:

  • 0 β†’ Success ✨ you did it, queen πŸ‘‘
  • -EINVAL β†’ the GPIO port is invalid, or it can't be initialized 😭 that's a hard no, bestie, the port is not giving what it needs to give πŸ’€
lowkey important: those are the return codes listed here, full stop. don't go inventing extra ones, that would be not slay πŸ™ˆ

πŸ’œ SEE ALSO

the whole extended friend group πŸ’– first, the kernel file and the structs:

  • ./drivers/usb/gadget/udc/pch_udc.c, and the kernel file ./drivers/usb/gadget/udc (yes it's listed over there at the bottom too, we'll get to it 🌈)
  • struct pch_udc_data_dma_desc(9), struct pch_udc_stp_dma_desc(9), struct pch_udc_cfg_data(9), struct pch_udc_ep(9), struct pch_vbus_gpio_data(9)
  • struct pch_udc_dev(9), struct pch_udc_request(9)

then the full squad of functions, in order, and yes we're listing every single one because we don't do half-finished group chats here πŸ’…:

fr fr that's the whole list β€” 100% of it, not one dropped πŸ“ go read them if you want the full lore, they're all linked from that pch_udc.c universe 🌈

🌸 that's a wrap, bestie! this page lives under ./drivers/usb/gadget/udc, and the version of the manual we're reading is dated October 2026 β€” so like, future-legend behavior honestly πŸ‘‘βœ¨ mwah, go read some kernel source πŸ’œπŸ¦‹

πŸ“¦ where this page comes from