|
@@ -487,6 +487,7 @@ static void ade_crtc_enable(struct drm_crtc *crtc)
|
|
|
ade_set_medianoc_qos(acrtc);
|
|
|
ade_display_enable(acrtc);
|
|
|
ade_dump_regs(ctx->base);
|
|
|
+ drm_crtc_vblank_on(crtc);
|
|
|
acrtc->enable = true;
|
|
|
}
|
|
|
|
|
@@ -498,6 +499,7 @@ static void ade_crtc_disable(struct drm_crtc *crtc)
|
|
|
if (!acrtc->enable)
|
|
|
return;
|
|
|
|
|
|
+ drm_crtc_vblank_off(crtc);
|
|
|
ade_power_down(ctx);
|
|
|
acrtc->enable = false;
|
|
|
}
|
|
@@ -965,21 +967,21 @@ static int ade_dts_parse(struct platform_device *pdev, struct ade_hw_ctx *ctx)
|
|
|
}
|
|
|
|
|
|
ctx->ade_core_clk = devm_clk_get(dev, "clk_ade_core");
|
|
|
- if (!ctx->ade_core_clk) {
|
|
|
+ if (IS_ERR(ctx->ade_core_clk)) {
|
|
|
DRM_ERROR("failed to parse clk ADE_CORE\n");
|
|
|
- return -ENODEV;
|
|
|
+ return PTR_ERR(ctx->ade_core_clk);
|
|
|
}
|
|
|
|
|
|
ctx->media_noc_clk = devm_clk_get(dev, "clk_codec_jpeg");
|
|
|
- if (!ctx->media_noc_clk) {
|
|
|
+ if (IS_ERR(ctx->media_noc_clk)) {
|
|
|
DRM_ERROR("failed to parse clk CODEC_JPEG\n");
|
|
|
- return -ENODEV;
|
|
|
+ return PTR_ERR(ctx->media_noc_clk);
|
|
|
}
|
|
|
|
|
|
ctx->ade_pix_clk = devm_clk_get(dev, "clk_ade_pix");
|
|
|
- if (!ctx->ade_pix_clk) {
|
|
|
+ if (IS_ERR(ctx->ade_pix_clk)) {
|
|
|
DRM_ERROR("failed to parse clk ADE_PIX\n");
|
|
|
- return -ENODEV;
|
|
|
+ return PTR_ERR(ctx->ade_pix_clk);
|
|
|
}
|
|
|
|
|
|
return 0;
|