[PATCH 4/5] remoteproc: mtk_scp: Use devm_of_reserved_mem_device_init()
Mukesh Ojha
mukesh.ojha at oss.qualcomm.com
Wed Sep 2 12:33:17 PDT 2026
Switch to devm_of_reserved_mem_device_init() so the reserved memory
region is released automatically when the device is unbound. Remove
the explicit of_reserved_mem_device_release() call from
scp_unmap_memory_region(). The DMA coherent buffer is still freed
explicitly there before devres releases the reserved memory region,
preserving the correct teardown order.
Signed-off-by: Mukesh Ojha <mukesh.ojha at oss.qualcomm.com>
---
drivers/remoteproc/mtk_scp.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index 9751acc2bf83..2a6c286b86a7 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -1034,7 +1034,7 @@ static int scp_map_memory_region(struct mtk_scp *scp)
int ret;
const struct mtk_scp_sizes_data *scp_sizes;
- ret = of_reserved_mem_device_init(scp->dev);
+ ret = devm_of_reserved_mem_device_init(scp->dev);
/* reserved memory is optional. */
if (ret == -ENODEV) {
@@ -1067,7 +1067,6 @@ static void scp_unmap_memory_region(struct mtk_scp *scp)
dma_free_coherent(scp->dev, scp_sizes->max_dram_size, scp->cpu_addr,
scp->dma_addr);
- of_reserved_mem_device_release(scp->dev);
}
static int scp_register_ipi(struct platform_device *pdev, u32 id,
--
2.55.0
More information about the linux-arm-kernel
mailing list