提交 b33e0773 编写于 作者: D Dave Airlie

Merge tag 'drm-hisilicon-next-2016-07-04' of github.com:xin3liang/linux into drm-next

drm-hisilicon-next

* tag 'drm-hisilicon-next-2016-07-04' of github.com:xin3liang/linux:
  drm/hisilicon: Fix ADE vblank on/off handling
  drm/hisilicon: add select HISI_KIRIN_DW_DSI
  drm/hisilicon: Fix return value check in ade_dts_parse()
...@@ -4,6 +4,7 @@ config DRM_HISI_KIRIN ...@@ -4,6 +4,7 @@ config DRM_HISI_KIRIN
select DRM_KMS_HELPER select DRM_KMS_HELPER
select DRM_GEM_CMA_HELPER select DRM_GEM_CMA_HELPER
select DRM_KMS_CMA_HELPER select DRM_KMS_CMA_HELPER
select HISI_KIRIN_DW_DSI
help help
Choose this option if you have a hisilicon Kirin chipsets(hi6220). Choose this option if you have a hisilicon Kirin chipsets(hi6220).
If M is selected the module will be called kirin-drm. If M is selected the module will be called kirin-drm.
......
...@@ -487,6 +487,7 @@ static void ade_crtc_enable(struct drm_crtc *crtc) ...@@ -487,6 +487,7 @@ static void ade_crtc_enable(struct drm_crtc *crtc)
ade_set_medianoc_qos(acrtc); ade_set_medianoc_qos(acrtc);
ade_display_enable(acrtc); ade_display_enable(acrtc);
ade_dump_regs(ctx->base); ade_dump_regs(ctx->base);
drm_crtc_vblank_on(crtc);
acrtc->enable = true; acrtc->enable = true;
} }
...@@ -498,6 +499,7 @@ static void ade_crtc_disable(struct drm_crtc *crtc) ...@@ -498,6 +499,7 @@ static void ade_crtc_disable(struct drm_crtc *crtc)
if (!acrtc->enable) if (!acrtc->enable)
return; return;
drm_crtc_vblank_off(crtc);
ade_power_down(ctx); ade_power_down(ctx);
acrtc->enable = false; acrtc->enable = false;
} }
...@@ -965,21 +967,21 @@ static int ade_dts_parse(struct platform_device *pdev, struct ade_hw_ctx *ctx) ...@@ -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"); 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"); 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"); 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"); 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"); 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"); DRM_ERROR("failed to parse clk ADE_PIX\n");
return -ENODEV; return PTR_ERR(ctx->ade_pix_clk);
} }
return 0; return 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册