devm_acpi_d...ler_register(9)
β¨ devm_acpi_dma_controller_register(9) β¨
okay so bestie, welcome to the Kernel API Manual β this one's a lil' helper from ./drivers/dma and it's literally the resource-managed glow-up of acpi_dma_controller_register(). no cap, it's giving "register your DMA controller but make it self-cleaning" π
π NAME π
devm_acpi_dma_controller_register β the resource managed version of acpi_dma_controller_register(). she's the same girlie but with automatic cleanup energy β¨
πΈ SYNOPSIS πΈ
int devm_acpi_dma_controller_register (struct device *dev , struct
dma_chan *(*acpi_dma_xlate) (struct acpi_dma_spec *, struct acpi_dma *)
, void *data );
π¦ ARGUMENTS π¦
devβ the device that's registering this DMA controller. it's the main character of this call, periodt πacpi_dma_xlateβ the translation function. that's a function pointer, bestie, typedstruct dma_chan *(*)(struct acpi_dma_spec *, struct acpi_dma *)β she takes anacpi_dma_spec *and anacpi_dma *, and hands you back astruct dma_chan *π«Άdataβ a pointer to controller specific data. whatever extra lil' bits your controller needs, they live here π
π DESCRIPTION π
so this is the managed acpi_dma_controller_register. the DMA controllers registered through this function are automatically freed on driver detach β like, you don't have to do the cleanup yourself, the devm machinery handles it for you and honestly? obsessed πβ¨
want more info? go peek at acpi_dma_controller_register β that's the unmanaged sibling, iykyk π
ngl, the whole point here is that you get the auto-free behavior instead of remembering to unwind manually. it's giving main character energy with built-in accountability π
β RETURN β
0 on success, or an appropriate errno value on error. that's it, that's the vibe check π
π SEE ALSO π
Kernel file ./drivers/dma/acpi-dma.c β that's the source, go read her:
acpi_dma_parse_resource_group(9)acpi_dma_parse_csrt(9)acpi_dma_controller_register(9)acpi_dma_controller_free(9)acpi_dma_update_dma_spec(9)acpi_dma_parse_fixed_dma(9)acpi_dma_request_slave_chan_by_index(9)acpi_dma_request_slave_chan_by_name(9)acpi_dma_simple_xlate(9)
and that's the whole page, bestie β no notes π
π this cutie came from ./drivers/dma, dated October 2026, and she's filed under devm_acpi_d...ler_register(9) β slay, go forth and register responsibly πβ¨
π¦ 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