pch_udc_star...xt_txrequest(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

pch_udc_start_next_txrequest β€” okay bestie, this is literally the function that starts the next transmission requirement ✨ (that's the whole description, don't come for me, it's what the manpage says πŸ’€)

This one lives in the Kernel API Manual, so you already know it's giving kernel-dev main character energy πŸ‘‘


✨ SYNOPSIS ✨

void pch_udc_start_next_txrequest (struct pch_udc_ep *ep );

Returns nothing (void), takes exactly one thing. Minimalist. Iconic. Periodt πŸ’…


🫢 ARGUMENTS 🫢

  • ep β€” the reference to the endpoint structure πŸ¦‹ like, it's a pointer to a struct pch_udc_ep, and that's the tea. That's who you hand over. No cap.

πŸ‘€ SEE ALSO πŸ‘€

Alright so this next bit is basically the whole group chat πŸ’¬ β€” the manpage points at the kernel file ./drivers/usb/gadget/udc/pch_udc.c plus a massive roll call of structs and functions. Not me dropping all of them, but every single one is here because we do not skip the boring parts in this house πŸŽ€

The structs first, because they're the moment πŸ’–

  • struct pch_udc_data_dma_desc(9), struct pch_udc_stp_dma_desc(9), struct pch_udc_cfg_data(9)
  • struct pch_udc_ep(9), struct pch_vbus_gpio_data(9), struct pch_udc_dev(9)
  • struct pch_udc_request(9)

CSR / core-ish stuff 🌸

All the endpoint setters, lowkey a whole collection πŸ¦‹

DMA + interrupts, the serious ones πŸ”₯

Status + control registers πŸ™ˆ

NAK, flush, enable/disable πŸ’œ

Init / exit / PCD layer ⭐

VBUS GPIO squad πŸ“

Request helpers + DMA chain 🧚

Gadget-side PCD entry points πŸ‘‘

Transfer completion + service handlers πŸŽ€

Setup / reinit / pools, the finale 🌈


Lowkey the whole pch_udc.c file is in the SEE ALSO because everything in that driver is connected, iykyk πŸ’€

And that's the page, bestie! πŸ«ΆπŸ’– This one came out of the Kernel API Manual source-path ./drivers/usb/gadget/udc, dated October 2026 β€” go read the real thing if you need the deep lore, and slay your kernel journey βœ¨πŸ’…πŸŽ€

πŸ“¦ where this page comes from