On Tue, Apr 22, 2014 at 04:09:16AM +0530, Ajay Kumar wrote: [...]
diff --git a/drivers/gpu/drm/exynos/exynos_dp_core.c b/drivers/gpu/drm/exynos/exynos_dp_core.c
[...]
@@ -1012,9 +1013,16 @@ static int exynos_dp_create_connector(struct exynos_drm_display *display, dp->encoder = encoder;
/* Pre-empt DP connector creation if there's a bridge */
- ret = exynos_drm_attach_lcd_bridge(dp->drm_dev, encoder);
- if (ret)
- ret = exynos_drm_attach_lcd_bridge(dp->drm_dev, encoder, dp->drm_panel);
- if (ret) {
/*
* Also set "dp->drm_panel = NULL" so that we don't end up
* controlling panel power both in exynos_dp and bridge
* DPMS routines.
*/
return 0;dp->drm_panel = NULL;
- }
This kind of hack should set off an alarm that you're doing something wrong. I'm not sure integration of bridges and panels has been thought about or discussed a lot, but this doesn't look right to me at all.
Thierry