STRUCT CI_HW_EP(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay so bestie, welcome to the struct ci_hw_ep(9) page β€” it's the manual page for struct ci_hw_ep, aka the endpoint representation. Yes, we're doing a whole struct field-by-field, and honestly? iconic. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

Here's the struct exactly as it is, no edits, no cap:

struct ci_hw_ep {
    struct usb_ep                           ep;
    u8 dir;
    u8 num;
    u8 type;
    char name[16];
    struct {
      struct list_head        queue;
      struct ci_hw_qh         *ptr;
      dma_addr_t dma;
    } qh;
    int wedge;
    struct ci_hdrc                          *ci;
    spinlock_t *lock;
    struct dma_pool                         *td_pool;
    struct td_node                          *pending_td;
 };
psst: pending_td is right there in the struct, but the Members section below doesn't give it its own little blurb β€” and I'm not out here inventing one. πŸ’…

🌸 Members 🌸

Time for the member-by-member vibe check, bestie:

  • ep β€” endpoint structure for gadget drivers
  • dir β€” endpoint direction (TX/RX)
  • num β€” endpoint number
  • type β€” endpoint type
  • name β€” string description of the endpoint
  • qh β€” queue head for this endpoint
  • wedge β€” is the endpoint wedged
  • ci β€” pointer to the controller
  • lock β€” pointer to controller's spinlock
  • td_pool β€” pointer to controller's TD pool

πŸ‘‘ SEE ALSO πŸ‘‘

the little kernel-file neighbors and friends, all accounted for:


that's the whole page, bestie β€” sourced from ./drivers/usb/chipidea, dated October 2026, and it's the struct ci_hw_ep(9) manual page. mwah πŸ’‹πŸ«Ά

πŸ“¦ where this page comes from