usb_hcd_irq(9)
π usb_hcd_irq(9) β Kernel API Manual π
okay so bestie, welcome to the usb_hcd_irq(9) page from the Kernel API Manual β this is literally the little hook that ties IRQs into the HCD framework, aka the bus glue. π«Άβ¨
π NAME π
usb_hcd_irq β hook IRQs to HCD framework (bus glue) π
πΈ SYNOPSIS πΈ
the signature is giving:
irqreturn_t usb_hcd_irq (int irq , void *__hcd );
π¦ ARGUMENTS π¦
irqβ the IRQ being raised β‘__hcdβ pointer to the HCD whose IRQ is being signaled π
π₯ DESCRIPTION π₯
okay so here's the tea: if the controller isn't HALTed, it calls the driver's irq handler. then it checks whether the controller is now dead. that's the whole vibe check β no extra lore, no invented drama. π
β¨ RETURN β¨
IRQ_HANDLEDif the IRQ was handled. βIRQ_NONEotherwise. β
π SEE ALSO π
Kernel file ./drivers/usb/core/hcd.c is the main-character file here, and these are all in the SEE ALSO group chat:
ascii2desc(9)rh_string(9)usb_bus_init(9)usb_register_bus(9)usb_deregister_bus(9)register_root_hub(9)usb_calc_bus_time(9)usb_hcd_link_urb_to_ep(9)usb_hcd_check_unlink_urb(9)usb_hcd_unlink_urb_from_ep(9)usb_hcd_giveback_urb(9)usb_hcd_alloc_bandwidth(9)usb_hcd_reset_endpoint(9)usb_alloc_streams(9)usb_free_streams(9)usb_hcd_resume_root_hub(9)usb_bus_start_enum(9)usb_hc_died(9)usb_create_shared_hcd(9)usb_create_hcd(9)usb_stop_hcd(9)usb_add_hcd(9)usb_remove_hcd(9)
xoxo, your kernel bestie π β source/version: ./drivers/usb/core, date: October 2026, and this whole page is about usb_hcd_irq(9). slay and stay hydrated πβ¨
π¦ 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