mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 01:53:29 +02:00
media: mtk-jpegdec: add missing destroy_workqueue()
destroy_workqueue() needs be called to when driver is
unloading, fix it by using devm_add_action_or_reset()
to make workqueuedevice-managed.
Fixes: dedc215003 ("media: mtk-jpegdec: add jpeg decode worker interface")
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
parent
def4d25856
commit
ba7c0d3446
|
|
@ -580,6 +580,11 @@ static int mtk_jpegdec_hw_init_irq(struct mtk_jpegdec_comp_dev *dev)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void mtk_jpegdec_destroy_workqueue(void *data)
|
||||
{
|
||||
destroy_workqueue(data);
|
||||
}
|
||||
|
||||
static int mtk_jpegdec_hw_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct mtk_jpegdec_clk *jpegdec_clk;
|
||||
|
|
@ -614,6 +619,11 @@ static int mtk_jpegdec_hw_probe(struct platform_device *pdev)
|
|||
| WQ_FREEZABLE);
|
||||
if (!master_dev->workqueue)
|
||||
return -EINVAL;
|
||||
|
||||
ret = devm_add_action_or_reset(&pdev->dev, mtk_jpegdec_destroy_workqueue,
|
||||
master_dev->workqueue);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
atomic_set(&master_dev->dechw_rdy, MTK_JPEGDEC_HW_MAX);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user