video: rockchip: mpp: rkvdec2: fix rv1126b reboot stuck issue

Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: I3df1c5b990fcc2582c2179469e43bc165f9de8b4
This commit is contained in:
Hongjin Li
2025-04-03 14:41:18 +08:00
committed by Tao Huang
parent 3b17f0f8c1
commit ecca1f334b

View File

@@ -1573,6 +1573,16 @@ static struct mpp_hw_ops rkvdec_rk3576_hw_ops = {
.hack_run = rk3576_workaround_run,
};
static struct mpp_hw_ops rkvdec_rv1126b_hw_ops = {
.init = rkvdec2_rk3576_init,
.exit = rkvdec2_rk3576_exit,
.clk_on = rkvdec2_clk_on,
.clk_off = rkvdec2_clk_off,
.get_freq = rkvdec2_get_freq,
.set_freq = rkvdec2_set_freq,
.reset = rkvdec_vdpu383_reset,
};
static struct mpp_dev_ops rkvdec_v2_dev_ops = {
.alloc_task = rkvdec2_alloc_task,
.run = rkvdec2_run,
@@ -1666,7 +1676,7 @@ static const struct mpp_dev_var rkvdec_rv1126b_data = {
.device_type = MPP_DEVICE_RKVDEC,
.hw_info = &rkvdec_vdpu384a_hw_info,
.trans_info = rkvdec_vdpu384a_trans,
.hw_ops = &rkvdec_rk3576_hw_ops,
.hw_ops = &rkvdec_rv1126b_hw_ops,
.dev_ops = &rkvdec_vdpu383_dev_ops,
};
@@ -1998,6 +2008,7 @@ static int rkvdec2_probe_default(struct platform_device *pdev)
mpp = &dec->mpp;
platform_set_drvdata(pdev, mpp);
mpp->is_irq_startup = false;
if (pdev->dev.of_node) {
match = of_match_node(mpp_rkvdec2_dt_match, pdev->dev.of_node);
@@ -2031,6 +2042,7 @@ static int rkvdec2_probe_default(struct platform_device *pdev)
return -EINVAL;
}
mpp->is_irq_startup = true;
mpp->session_max_buffers = RKVDEC_SESSION_MAX_BUFFERS;
rkvdec2_procfs_init(mpp);
if (dec->link_dec && (mpp->task_capacity > 1))