devm_dma_request_chan(9)
π devm_dma_request_chan(9) β the managed-channel glow-up
okay bestie, welcome to the Kernel API Manual page for devm_dma_request_chan(9) β¨ ngl this one is short but it's so useful β it's the "try to allocate an exclusive slave channel" girlie, and she comes with built-in cleanup energy π
πΈ NAME πΈ
devm_dma_request_chan β try to allocate an exclusive slave channel π¦
β¨ SYNOPSIS β¨
struct dma_chan * devm_dma_request_chan (struct device *dev , const char
*name );
π«Ά ARGUMENTS π«Ά
devβ pointer to client device structure π (the device that's doing the asking, iykyk)nameβ slave channel name β (yes queen, tell it which channel you want)
π DESCRIPTION π
So like, this function returns a pointer to the appropriate DMA channel on success, or an error pointer π β that's the whole vibe check. Either you get your channel or you get a sad little error pointer, no in-between π
The operation is managed, and it will be undone on driver detach π§ periodt. That's the devm_ part doing its main character work β no manual cleanup era, the kernel handles it for you when the driver dips π
lowkey the best part: you don't have to remember to release it. The managed lifecycle ate and left no crumbs π
π₯ SEE ALSO π₯
Kernel file ./drivers/dma/dmaengine.c π and all her friends:
dev_to_dma_chan(9)struct dma_chan_tbl_ent(9)dma_chan_is_local(9)min_chan(9)dma_channel_rebalance(9)balance_ref_count(9)dma_chan_get(9)dma_chan_put(9)dma_find_channel(9)dma_issue_pending_all(9)dma_get_slave_channel(9)__dma_request_channel(9)dma_request_chan(9)dma_request_chan_by_mask(9)dmaengine_get(9)dmaengine_put(9)dma_async_device_register(9)dma_async_device_unregister(9)dmaenginem_async_device_register(9)dma_wait_for_async_tx(9)dma_run_dependencies(9)
and that's the whole page, bestie π written from ./drivers/dma, dated October 2026, under the manual name devm_dma_request_chan(9) β slay, go request your channel, you've got this ππ
π¦ 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