STRUCT CDNSP_DEQUEUE_STATE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct cdnsp_dequeue_state(9) β€” like, the whole vibe

okay so real talk, bestie, this is a page from the Kernel API Manual, section 9, and it's all about struct cdnsp_dequeue_state πŸŽ€ β€” the little bundle of joy that holds the new dequeue pointer for the Transfer Ring. that's it. that's the whole personality. it's giving "small struct, big responsibility" ✨


🌸 SYNOPSIS 🌸

like, here's the whole thing laid out, no cap:

struct cdnsp_dequeue_state {
    struct cdnsp_segment *new_deq_seg;
    union cdnsp_trb *new_deq_ptr;
    int new_cycle_state;
    unsigned int stream_id;
 };

look at her. four fields. absolutely iconic. πŸ‘‘


πŸ¦‹ Members πŸ¦‹

okay so let's go through the whole cast, main character by main character πŸ’–

  • new_deq_seg β€” the new dequeue segment. that's her job. she's a segment. 🫢
  • new_deq_ptr β€” the new dequeue pointer. yes it's literally named that. yes it does literally that. lowkey obsessed with the honesty here.
  • new_cycle_state β€” the new cycle state. int-flavored. that's the whole description, don't come for me, I'm just the messenger 😭
  • stream_id β€” the stream id for which the new dequeue pointer has been selected. so like, which stream this dequeue pointer got picked for. iykyk πŸ’«

⭐ SEE ALSO ⭐

you want the whole friend group? 'cause the whole friend group is here, bestie. this lives in the Kernel file ./drivers/usb/cdns3/cdnsp-gadget.h, and it is surrounded by icons:

  • 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_ring(9)
  • struct cdnsp_erst_entry(9)
  • struct cdnsp_erst(9)
  • struct cdnsp_request(9)
  • struct cdnsp_port(9)
  • struct cdnsp_device(9)
  • next_request(9)

like, that's a full roster. not one of them skipped. we love a complete ensemble cast 🌈

fr fr though β€” if you're poking at the Transfer Ring dequeue pointer, read the neighbors too. they all live together in ./drivers/usb/cdns3/cdnsp-gadget.h and they absolutely gossip about each other πŸ’€

πŸ’œ the cute sign-off πŸ’œ

this little love letter ships from ./drivers/usb/cdns3 and it's dated October 2026, page struct cdnsp_dequeue_state(9). periodt. go forth and dequeue responsibly, bestie πŸ§šβ€β™€οΈπŸŒΈπŸ’…

πŸ“¦ where this page comes from