STRUCT CDNSP_REQUEST(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct cdnsp_request(9) πŸ’–

okay so real talk β€” this is a page straight out of the Kernel API Manual, and it's all about one little struct, bestie. buckle up πŸŽ€


✨ NAME ✨

struct cdnsp_request β€” the extended device-side glow-up of a usb_request object. literally the request, but with extra ✨extended✨ energy. πŸ’…


🌸 SYNOPSIS 🌸

struct cdnsp_request {
    struct cdnsp_td td;
    struct usb_request request;
    struct list_head list;
    struct cdnsp_ep  *pep;
    u8 epnum;
    unsigned direction:1;
 };

that's the whole vibe right there, no cap 🫢


πŸ¦‹ Members πŸ¦‹

  • td β€” the Transfer descriptor that's linked up with this request. it's giving "this request's ride-or-fail partner" πŸš—
  • request β€” the generic usb_request object that describes one single I/O request. one request, one moment, main character energy πŸ‘‘
  • list β€” used for adding the request to the endpoint's pending_list. it's the group chat of requests, fr fr πŸ’¬
  • pep β€” the extended representation of a usb_ep object. think of it as the endpoint, but with lore πŸ“–
  • epnum β€” the endpoint number that's associated with the usb request. the digits, the ID, the iykyk πŸ”’
  • direction β€” the endpoint direction for the usb request. which way are we goin', bestie? 🧭

πŸ‘‘ SEE ALSO πŸ‘‘

the Kernel file ./drivers/usb/cdns3/cdnsp-gadget.h, plus this whole iconic lineup of siblings β€” collect them all, they're literally a family 🌈:

  • struct cdnsp_cap_regs(9)
  • struct cdnsp_op_regs(9)
  • struct cdnsp_port_regs(9)
  • struct cdnsp_intr_reg(9)
  • struct cdnsp_run_regs(9)
  • struct cdnsp_rev_cap(9)
  • struct cdnsp_doorbell_array(9)
  • struct cdnsp_container_ctx(9)
  • struct cdnsp_slot_ctx(9)
  • struct cdnsp_ep_ctx(9)
  • struct cdnsp_stream_info(9)
  • struct cdnsp_ep(9)
  • struct cdnsp_device_context_array(9)
  • struct cdnsp_transfer_event(9)
  • struct cdnsp_link_trb(9)
  • struct cdnsp_event_cmd(9)
  • struct cdnsp_segment(9)
  • struct cdnsp_td(9)
  • struct cdnsp_dequeue_state(9)
  • struct cdnsp_ring(9)
  • struct cdnsp_erst_entry(9)
  • struct cdnsp_erst(9)
  • struct cdnsp_port(9)
  • struct cdnsp_device(9)
  • next_request(9)

okay and that's a wrap on the whole page, mwah πŸ’‹ this blessed knowledge lives in ./drivers/usb/cdns3 and it's dated October 2026 β€” so mark your calendars, it's iconic, it's timeless, periodt. 🩷✨

πŸ“¦ where this page comes from