STRUCT CDNS2_INTERRUPT_REGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay bestie, meet struct cdns2_interrupt_regs(9) β€” it’s from the Kernel API Manual, and it’s literally the USB interrupt related registers struct. We’re gonna walk through it together, no cap ✨

struct cdns2_interrupt_regs β€” USB interrupt related registers. Periodt.

πŸ¦‹ SYNOPSIS πŸ¦‹

struct cdns2_interrupt_regs {
    __u8 reserved[396];
    __u8 usbirq;
    __u8 extirq;
    __le16 rxpngirq;
    __le16 reserved1[4];
    __u8 usbien;
    __u8 extien;
    __le16 reserved2[3];
    __u8 usbivect;
};

πŸ“ Members πŸ“

  • reserved β€” reserved. (Yep, that’s the __u8 reserved[396]; chunk up top, bestie.)
  • usbirq β€” USB interrupt request register.
  • extirq β€” external interrupt request register.
  • rxpngirq β€” external interrupt request register. (Not me seeing the same description as extirq β€” the page says it twice, so I’m saying it twice, periodt πŸ’…)
  • reserved1 β€” reserved.
  • usbien β€” USB interrupt enable register.
  • extien β€” external interrupt enable register.
  • reserved2 β€” reserved.
  • usbivect β€” USB interrupt vector register.

πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file ./drivers/usb/gadget/udc/cdns2/cdns2-gadget.h β€” yes, that’s the spot, iykyk πŸ‘€

  • struct cdns2_ep0_regs(9)
  • struct cdns2_epx_base(9)
  • struct cdns2_epx_regs(9)
  • struct cdns2_usb_regs(9)
  • struct cdns2_adma_regs(9)
  • struct cdns2_trb(9)
  • struct cdns2_ring(9)
  • struct cdns2_endpoint(9)
  • struct cdns2_request(9)
  • struct cdns2_device(9)

mwah πŸ’– β€” source/version: ./drivers/usb/gadget/udc/cdns2, October 2026. bye bestie 🫢

πŸ“¦ where this page comes from