mirror of https://gitee.com/openkylin/linux.git
drm/exynos: fix no hdmi output
The hdmi outputs black screen only even though under the hood Xorg and framebuffer console are fine : devices found and initialized, but not a pixel out. Commit93bca243ec
("drm/exynos: remove struct exynos_drm_manager") changed the call order of mixer_initialize with regards to exynos_drm_crtc_create. This changes breaks hdmi out on Odroid U2 (linux-next with added Marek Szyprowski v4 hdmi patchset from linux-samsung-soc ML). Restore the previous call ordering get hdmi to ouput proper pixels: ie call mixer_initialize first then exynos_drm_crtc_create. Fixes:93bca243ec
("drm/exynos: remove struct exynos_drm_manager") Signed-off-by: Alban Browaeys <prahal@yahoo.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
This commit is contained in:
parent
92dc7a047b
commit
e2dc3f72ee
|
@ -1254,18 +1254,19 @@ static int mixer_bind(struct device *dev, struct device *manager, void *data)
|
|||
struct drm_device *drm_dev = data;
|
||||
int ret;
|
||||
|
||||
ret = mixer_initialize(ctx, drm_dev);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
ctx->crtc = exynos_drm_crtc_create(drm_dev, ctx->pipe,
|
||||
EXYNOS_DISPLAY_TYPE_HDMI,
|
||||
&mixer_crtc_ops, ctx);
|
||||
if (IS_ERR(ctx->crtc)) {
|
||||
mixer_ctx_remove(ctx);
|
||||
ret = PTR_ERR(ctx->crtc);
|
||||
goto free_ctx;
|
||||
}
|
||||
|
||||
ret = mixer_initialize(ctx, drm_dev);
|
||||
if (ret)
|
||||
goto free_ctx;
|
||||
|
||||
return 0;
|
||||
|
||||
free_ctx:
|
||||
|
|
Loading…
Reference in New Issue