video: rockchip: mpp: fix rk3036 vdpu soft reset issue

Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: I38b3beaf0e6bcc5ef0e63614eb8c5c27fa37a1ca
This commit is contained in:
Chandler Chen
2023-04-06 15:55:00 +08:00
committed by Tao Huang
parent c3239eb297
commit 4bee1c9a00
2 changed files with 10 additions and 0 deletions

View File

@@ -1562,9 +1562,14 @@ static int rkvdec_3036_set_grf(struct mpp_dev *mpp)
list_for_each_entry_safe(loop, n, &queue->dev_list, queue_link) {
if (test_bit(loop->var->device_type, &queue->dev_active_flags)) {
mpp_set_grf(loop->grf_info);
if (loop->hw_ops->clk_on)
loop->hw_ops->clk_on(loop);
if (loop->hw_ops->reset)
loop->hw_ops->reset(loop);
rockchip_iommu_disable(loop->dev);
if (loop->hw_ops->clk_off)
loop->hw_ops->clk_off(loop);
clear_bit(loop->var->device_type, &queue->dev_active_flags);
}
}

View File

@@ -751,9 +751,14 @@ static int vdpu_3036_set_grf(struct mpp_dev *mpp)
list_for_each_entry_safe(loop, n, &queue->dev_list, queue_link) {
if (test_bit(loop->var->device_type, &queue->dev_active_flags)) {
mpp_set_grf(loop->grf_info);
if (loop->hw_ops->clk_on)
loop->hw_ops->clk_on(loop);
if (loop->hw_ops->reset)
loop->hw_ops->reset(loop);
rockchip_iommu_disable(loop->dev);
if (loop->hw_ops->clk_off)
loop->hw_ops->clk_off(loop);
clear_bit(loop->var->device_type, &queue->dev_active_flags);
}
}