STRUCT XILINX_DPDMA_DEVICE(9)
π struct xilinx_dpdma_device(9) β like, the DPDMA device struct, bestie β¨
okay so this is a page from the Kernel API Manual, and it's literally all about struct xilinx_dpdma_device β the DPDMA device, no cap π«Ά
πΈ NAME πΈ
struct xilinx_dpdma_device β DPDMA device. That's it, that's the vibe. π
β¨ SYNOPSIS β¨
bestie, here's the whole struct, character for character, because we do not play fast and loose with source code:
struct xilinx_dpdma_device {
struct dma_device common;
void __iomem *reg;
struct device *dev;
int irq;
struct clk *axi_clk;
struct xilinx_dpdma_chan *chan[XILINX_DPDMA_NUM_CHAN];
bool ext_addr;
};
π Members π
okay so every single field, one by one, and what it's giving:
commonβ the generic dma device structure. the main character of the struct, honestly πregβ register base address. where the registers live, periodt.devβ the generic device structure.irqβ the interrupt number.axi_clkβ axi clock. she ticks. π°οΈchanβ DPDMA channels. that'sstruct xilinx_dpdma_chan *chan[XILINX_DPDMA_NUM_CHAN], an array of them, iykyk πext_addrβ flag for 64 bit system (48 bit addressing). not me being obsessed with 48-bit addressing π
π¦ SEE ALSO π¦
so the kernel file you wanna peek at is ./drivers/dma/xilinx/xilinx_dpdma.c struct β and here's the full squad of related manpages, no skipping, every single one:
xilinx_dpdma_hw_desc(9)xilinx_dpdma_sw_desc(9)xilinx_dpdma_tx_desc(9)xilinx_dpdma_chan(9)xilinx_dpdma_sw_desc_set_dma_addrs(9)xilinx_dpdma_chan_alloc_sw_desc(9)xilinx_dpdma_chan_free_sw_desc(9)xilinx_dpdma_chan_dump_tx_desc(9)xilinx_dpdma_chan_alloc_tx_desc(9)xilinx_dpdma_chan_free_tx_desc(9)xilinx_dpdma_chan_prep_cyclic(9)xilinx_dpdma_chan_prep_interleaved_dma(9)xilinx_dpdma_chan_enable(9)xilinx_dpdma_chan_disable(9)xilinx_dpdma_chan_pause(9)xilinx_dpdma_chan_unpause(9)xilinx_dpdma_chan_queue_transfer(9)xilinx_dpdma_chan_ostand(9)xilinx_dpdma_chan_notify_no_ostand(9)xilinx_dpdma_chan_wait_no_ostand(9)xilinx_dpdma_chan_poll_no_ostand(9)xilinx_dpdma_chan_stop(9)xilinx_dpdma_chan_done_irq(9)xilinx_dpdma_chan_vsync_irq(9)xilinx_dpdma_chan_err(9)xilinx_dpdma_chan_handle_err(9)xilinx_dpdma_alloc_chan_resources(9)xilinx_dpdma_free_chan_resources(9)xilinx_dpdma_terminate_all(9)xilinx_dpdma_synchronize(9)xilinx_dpdma_err(9)xilinx_dpdma_handle_err_irq(9)xilinx_dpdma_enable_irq(9)xilinx_dpdma_disable_irq(9)xilinx_dpdma_chan_err_task(9)
π«Ά also the path ./drivers/dma/xilinx is where it all lives, bestie β go look, it's iconic.
π and that's the page!! brought to you by the Kernel API Manual, dated October 2026, living at ./drivers/dma/xilinx β mwah, slay, go read some kernel source ππ
π¦ 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