STRUCT DW_DMA_SLAVE(9)
β¨ struct dw_dma_slave β Kernel API Manual β¨
okay so bestie, welcome to the <pink>Kernel API Manual</pink> entry for struct dw_dma_slave, and honestly? it's giving "small struct, big responsibilities" π
πΈ NAME πΈ
struct dw_dma_slave β the controller-specific tea about a slave π«β¨ like, every slay detail the DMA controller needs to know about the peripheral it's about to serve.
π¦ SYNOPSIS π¦
struct dw_dma_slave {
struct device *dma_dev;
u8 src_id;
u8 dst_id;
u8 m_master;
u8 p_master;
u8 channels;
bool hs_polarity;
};
no cap, that's the whole shape of it π (and yes, keep the fields exactly like that, we do not freestyle struct definitions, that's how you end up crying at 3am π)
π Members π
dma_devβ the DMA master device. it'srequired, bestie, non-negotiable, the main character of this field list π if you skip it the whole vibe check fails.src_idβ thesrcrequest line. that's the line your source data rides in on, iconic littleu8πdst_idβ thedstrequest line. same energy, but for the destination side πm_masterβ the memory master for transfers on the allocated channel. literally who's carrying the memory-side of the transfer πΎβ¨p_masterβ the peripheral master for transfers on the allocated channel. and this one's the peripheral-side counterpart, they're a matched set fr fr π«Άchannelsβ a mask of the channels permitted for allocation. and here's the cute part: a zero value means any channel πΈ so zero isn't "none", it's "surprise me", lowkey iconic behaviour.hs_polarityβ sets active low polarity of the handshake interface. tinybool, big mood, flip it and the handshake signal is active low π
π₯ SEE ALSO π₯
- Kernel file
./include/linux/platform_data/dma-dw.h struct dw_dma_platform_data(9)β go read that one next, it's the sibling, iykyk π
and that's the page, bestie!! π§ source: ./include/linux/platform_data, dated October 2026 β mwah, go allocate some channels responsibly, struct dw_dma_slave(9) out π
βπ
π¦ 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