Meson 6.10: adjust patches to align with upstream changes

Need to be tested on hardware
This commit is contained in:
Igor Pecovnik 2024-08-05 09:07:31 +02:00 committed by Igor
parent a6c3bed0a3
commit 8662ef1c7b
2 changed files with 7 additions and 34 deletions

View File

@ -57,7 +57,7 @@ index 111111111111..222222222222 100644
+ dev_err(&pdev->dev,
+ "Couldn't create the HHI regmap\n");
+ ret = PTR_ERR(priv->hhi);
+ goto free_drm;
+ goto video_clock_exit;
+ }
}

View File

@ -123,14 +123,7 @@ index 111111111111..222222222222 100644
}
priv->hhi = devm_regmap_init_mmio(dev, regs,
@@ -290,36 +368,36 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
dev_err(&pdev->dev,
"Couldn't create the HHI regmap\n");
ret = PTR_ERR(priv->hhi);
- goto free_drm;
+ goto video_clock_exit;
}
}
@@ -290,13 +368,13 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
priv->canvas = meson_canvas_get(dev);
if (IS_ERR(priv->canvas)) {
@ -144,37 +137,17 @@ index 111111111111..222222222222 100644
- goto free_drm;
+ goto video_clock_exit;
ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_0);
if (ret) {
meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
- goto free_drm;
+ goto video_clock_exit;
}
ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_1);
if (ret) {
meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
meson_canvas_free(priv->canvas, priv->canvas_id_vd1_0);
- goto free_drm;
+ goto video_clock_exit;
}
ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_2);
if (ret) {
meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
meson_canvas_free(priv->canvas, priv->canvas_id_vd1_0);
meson_canvas_free(priv->canvas, priv->canvas_id_vd1_1);
- goto free_drm;
+ goto video_clock_exit;
}
priv->vsync_irq = platform_get_irq(pdev, 0);
if (ret)
goto free_canvas_osd1;
@@ -425,6 +503,8 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
exit_afbcd:
if (priv->afbcd.ops)
priv->afbcd.ops->exit(priv);
+video_clock_exit:
+ meson_video_clock_exit(priv);
free_drm:
drm_dev_put(drm);
free_canvas_vd1_2:
meson_canvas_free(priv->canvas, priv->canvas_id_vd1_2);
free_canvas_vd1_1:
@@ -469,6 +549,8 @@ static void meson_drv_unbind(struct device *dev)
if (priv->afbcd.ops)