STRUCT CDNS3_REQUEST(9)
π struct cdns3_request(9) π
okay so bestie, welcome to the glow-up era of struct cdns3_request β the extended device-side representation of a usb_request object. yes it's a kernel struct, yes it's iconic, and yes we're gonna get through it together π«Ά
β¨ SYNOPSIS β¨
struct cdns3_request {
struct usb_request request;
struct cdns3_endpoint *priv_ep;
struct cdns3_trb *trb;
int start_trb;
int end_trb;
struct cdns3_aligned_buf *aligned_buf;
#define REQUEST_PENDING BIT(0);
#define REQUEST_INTERNAL BIT(1);
#define REQUEST_INTERNAL_CH BIT(2);
#define REQUEST_ZLP BIT(3);
#define REQUEST_UNALIGNED BIT(4);
u32 flags;
struct list_head list;
int finished_trb;
int num_of_trb;
};
lowkey a whole little family in there. let's meet every member, no skips, no cap π
πΈ MEMBERS πΈ
requestβ the genericusb_requestobject describing a single I/O request. the main character, fr.priv_epβ the extended representation of ausb_epobject. it's giving "and this is my plus-one" πtrbβ the first TRB associated with this request. first in the ring, first to slay β¨start_trbβ number of the first TRB in the transfer ring.end_trbβ number of the last TRB in the transfer ring. closing the loop, periodt πaligned_bufβ object holding information about the aligned buffer associated with this endpoint. organization queen π¦flagsβ flag specifying special usage of request.listβ used by an internally allocated request to add towa2_descmiss_req_list. iykyk π₯finished_trbβ number of TRBs already finished per request. progress check, we love to see it βnum_of_trbβ how many TRBs are in this request. the headcount, basically π
π¦ SEE ALSO π¦
- Kernel file
./drivers/usb/cdns3/cdns3-gadget.h, plus these absolute icons:struct cdns3_usb_regs(9)struct cdns3_trb(9)struct cdns3_endpoint(9)struct cdns3_aligned_buf(9)struct cdns3_device(9)
go read them, bestie, they're all connected π
okay that's the whole page, mwah ππ this one lives over in ./drivers/usb/cdns3, dated October 2026 β from the Kernel API Manual era, and honestly? she ate. πβ¨
π¦ 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