mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
soc: ti: knav_qmss_queue: Implement resource cleanup in remove()
Implement the TODO in knav_queue_remove() by stopping PDSPs and freeing queue regions and queue ranges before disabling runtime PM, mirroring the cleanup performed in the probe error path. Set device_ready to false before cleanup to prevent any further use of the device during teardown. This ensures resources are released on driver unbind and avoids leaking queue/region state. Suggested-by: Nishanth Menon <nm@ti.com> Signed-off-by: Md Shofiqul Islam <shofiqtest@gmail.com> Link: https://lore.kernel.org/linux-arm-kernel/20260506154114.2288-1-shofiqtest@gmail.com/ Signed-off-by: Nishanth Menon <nm@ti.com>
This commit is contained in:
parent
b920352cfd
commit
10a1969353
|
|
@ -1873,7 +1873,12 @@ static int knav_queue_probe(struct platform_device *pdev)
|
|||
|
||||
static void knav_queue_remove(struct platform_device *pdev)
|
||||
{
|
||||
/* TODO: Free resources */
|
||||
struct knav_device *kdev = platform_get_drvdata(pdev);
|
||||
|
||||
device_ready = false;
|
||||
knav_queue_stop_pdsps(kdev);
|
||||
knav_queue_free_regions(kdev);
|
||||
knav_free_queue_ranges(kdev);
|
||||
pm_runtime_put_sync(&pdev->dev);
|
||||
pm_runtime_disable(&pdev->dev);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user