STRUCT CDNS2_ADMA_REGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct cdns2_adma_regs(9) β€” ADMA controller registers ✨

πŸ“› NAME

struct cdns2_adma_regs β€” ADMA controller registers. That's the whole vibe, bestie: this page from the Kernel API Manual is the register layout for the ADMA controller, and every single field is about to get its moment. πŸŽ€

🧚 SYNOPSIS

struct cdns2_adma_regs {
    __le32 conf;
    __le32 sts;
    __le32 reserved1[5];
    __le32 ep_sel;
    __le32 ep_traddr;
    __le32 ep_cfg;
    __le32 ep_cmd;
    __le32 ep_sts;
    __le32 reserved2;
    __le32 ep_sts_en;
    __le32 drbl;
    __le32 ep_ien;
    __le32 ep_ists;
    __le32 axim_ctrl;
    __le32 axim_id;
    __le32 reserved3;
    __le32 axim_cap;
    __le32 reserved4;
    __le32 axim_ctrl0;
    __le32 axim_ctrl1;
};

🫢 Members

Okay so here's the full cast, in order, no skips:

  • conf β€” DMA global configuration register. Main character setup energy. ✨
  • sts β€” DMA global Status register. The vibes report. πŸ‘€
  • reserved1 β€” reserved. Literally reserved, no side quest.
  • ep_sel β€” DMA endpoint select register. Pick your endpoint, bestie. πŸ’…
  • ep_traddr β€” DMA endpoint transfer ring address register. Address reveal. πŸ“
  • ep_cfg β€” DMA endpoint configuration register. Setting the whole look. πŸŽ€
  • ep_cmd β€” DMA endpoint command register. Say the word. πŸ—£οΈ
  • ep_sts β€” DMA endpoint status register. Status check, always. πŸ’
  • reserved2 β€” reserved. Still just reserved.
  • ep_sts_en β€” DMA endpoint status enable register. Turning the status notifications on. πŸ””
  • drbl β€” DMA doorbell register. Ding dong, the DMA is calling. πŸ›ŽοΈ
  • ep_ien β€” DMA endpoint interrupt enable register. Interrupts: enabled. πŸ’₯
  • ep_ists β€” DMA endpoint interrupt status register. Interrupt tea. 🍡
  • axim_ctrl β€” AXI Master Control register. In control, obviously. πŸ‘‘
  • axim_id β€” AXI Master ID register. Show your ID at the door. πŸͺͺ
  • reserved3 β€” reserved. Leave it alone, gorgeous.
  • axim_cap β€” AXI Master Wrapper Extended Capability. Capability era. 🌈
  • reserved4 β€” reserved. Reserved again, fr fr.
  • axim_ctrl0 β€” AXI Master Wrapper Extended Capability Control Register 0. Yes, zero. πŸ”₯
  • axim_ctrl1 β€” AXI Master Wrapper Extended Capability Control Register 1. And one. ⭐

πŸ’– SEE ALSO

  • Kernel file: ./drivers/usb/gadget/udc/cdns2/cdns2-gadget.h
  • Also check out these faves: struct cdns2_ep0_regs(9), struct cdns2_epx_base(9), struct cdns2_epx_regs(9), struct cdns2_interrupt_regs(9), struct cdns2_usb_regs(9), struct cdns2_trb(9), struct cdns2_ring(9), struct cdns2_endpoint(9), struct cdns2_request(9), struct cdns2_device(9)

mwah πŸ’‹ this page's source/version is ./drivers/usb/gadget/udc/cdns2, dated October 2026, and it's struct cdns2_adma_regs(9) from the Kernel API Manual β€” periodt. πŸŽ€πŸ‘‘

πŸ“¦ where this page comes from