STRUCT CDNSP_DOORBELL_ARRAY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct cdnsp_doorbell_array(9) β€” the Kernel API manual, but make it cute

okay so bestie, welcome to struct cdnsp_doorbell_array(9) πŸ’– this is the kernel API page for it, and honestly? it's a little two-field icon and we're gonna stan it properly. no cap.


✨ NAME ✨

struct cdnsp_doorbell_array β€” literally that's the whole name section, the original page doesn't even give it a tagline, so we're not gonna invent one πŸ™ˆ (no fake lore, that's the rule).


πŸŽ€ SYNOPSIS πŸŽ€

here's the whole struct, exactly as it lives, don't touch a character:

struct cdnsp_doorbell_array {
    __le32 cmd_db;
    __le32 ep_db;
 };

two __le32 fields, that's it, that's the whole vibe πŸ¦‹


πŸ¦‹ Members πŸ¦‹

  • cmd_db β€” the Command ring doorbell register ✨ that's its whole job, it's the doorbell for the command ring, she's giving main character energy for commands specifically.
  • ep_db β€” the Endpoint ring doorbell register πŸ’… and this one's got layers, so let's break down the bit fields:
    • Bits 0 - 7: Endpoint target πŸ‘‘
    • Bits 8 - 15: RsvdZ (reserved, hands off, nothing to see here πŸ™ˆ)
    • Bits 16 - 31: Stream ID 🌈
bestie please respect the RsvdZ bits. reserved means reserved. we don't poke the reserved bits. periodt.

🌸 SEE ALSO 🌸

so this struct does not roll alone β€” the kernel file is ./drivers/usb/cdns3/cdnsp-gadget.h, and the whole friend group is linked here, all of them, in order, no skipping 😀:

  • 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_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_request(9)
  • struct cdnsp_port(9)
  • struct cdnsp_device(9)
  • next_request(9)

like, that's the entire group chat and next_request(9) is the one who's always typing 😭 iykyk.


aaand that's the page!! 🫢 shoutout to ./drivers/usb/cdns3 for hosting all this drama, dated October 2026 ⭐ β€” signed, sealed, and delivered as struct cdnsp_doorbell_array(9) πŸŽ€ slay πŸ’œ

πŸ“¦ where this page comes from