STRUCT DW_EDMA_CHIP(9)
π NAME π
so like, you're reading struct dw_edma_chip(9) from the Kernel API Manual, and bestie, it's literally the representation of DesignWare eDMA controller hardware β¨ that's the whole vibe
π¦ SYNOPSIS π¦
struct dw_edma_chip {
struct device *dev;
int nr_irqs;
const struct dw_edma_plat_ops *ops;
u32 flags;
void __iomem *reg_base;
u16 ll_wr_cnt;
u16 ll_rd_cnt;
struct dw_edma_region ll_region_wr[HDMA_MAX_WR_CH];
struct dw_edma_region ll_region_rd[HDMA_MAX_RD_CH];
struct dw_edma_region dt_region_wr[HDMA_MAX_WR_CH];
struct dw_edma_region dt_region_rd[HDMA_MAX_RD_CH];
int db_irq;
resource_size_t db_offset;
enum dw_edma_map_format mf;
u8 func_no;
struct dw_edma *dw;
bool cfg_non_ll;
};
π Members π
okay so let's go member by member, no skips, we're doing the whole list periodt π
devβ thestruct deviceof the eDMA controller π«Άnr_irqsβ total number of DMA IRQs, like the whole squad countopsβ the DMA channel to IRQ number mapping, i.e. who goes with which IRQflagsβ thedw_edma_chip_flagssituation πΈreg_baseβ DMA register base address, the home address of the registersll_wr_cntβ DMA write link list count βοΈll_rd_cntβ DMA read link list count πll_region_wrβ DMA descriptor link list memory for the write channel π§ll_region_rdβ DMA descriptor link list memory for the read channeldt_region_wrβ DMA data memory for the write channel πdt_region_rdβ DMA data memory for the read channeldb_irqβ Virtual IRQ dedicated to interrupt emulation, she's virtual, she's special βdb_offsetβ offset from the DMA register basemfβ DMA register map formatfunc_noβ PCI endpoint function number used by DMA TLPs π₯dwβ thestruct dw_edmathat gets filled bydw_edma_probe, the main character fr fr
ngl, you'll also spot cfg_non_ll sitting up there in the struct π«£ β the Members list above is exactly what the page gives us, so we're not out here making stuff up about it π
β SEE ALSO β
- Kernel file
./include/linux/dma/edma.h struct dw_edma_plat_ops(9)enum dw_edma_chip_flags(9)enum dw_edma_ch_irq_mode(9)
go read those next, iykyk π
and that's the whole page bestie π this one came from ./include/linux/dma, dated October 2026, and it's the struct dw_edma_chip(9) footer signing off β slay, ate, no cap πβ¨
π¦ 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