Hi Inki, 2015-04-05 Inki Dae <inki.dae@xxxxxxxxxxx>: > Hi, > > 2015-04-04 3:09 GMT+09:00 Gustavo Padovan <gustavo@xxxxxxxxxxx>: > > From: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx> > > > > Run dpms operations through the atomic intefaces. This basically removes > > the .dpms() callback from econders and crtcs and use .disable() and > > .enable() to turn the crtc on and off. > > > > v2: Address comments by Joonyoung: > > - make hdmi code call ->disable() instead of ->dpms() > > - do not use WARN_ON on crtc enable/disable > > > > Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx> > > --- > > drivers/gpu/drm/exynos/exynos_dp_core.c | 2 +- > > drivers/gpu/drm/exynos/exynos_drm_connector.c | 2 +- > > drivers/gpu/drm/exynos/exynos_drm_crtc.c | 99 +++++++++++++++------------ > > drivers/gpu/drm/exynos/exynos_drm_dpi.c | 2 +- > > drivers/gpu/drm/exynos/exynos_drm_drv.h | 4 +- > > drivers/gpu/drm/exynos/exynos_drm_dsi.c | 2 +- > > drivers/gpu/drm/exynos/exynos_drm_encoder.c | 27 ++------ > > drivers/gpu/drm/exynos/exynos_drm_vidi.c | 2 +- > > drivers/gpu/drm/exynos/exynos_hdmi.c | 6 +- > > 9 files changed, 70 insertions(+), 76 deletions(-) > > > > ...snip... > > > diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c > > index 5b597bc..2ea7d01 100644 > > --- a/drivers/gpu/drm/exynos/exynos_hdmi.c > > +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c > > @@ -1051,7 +1051,7 @@ static void hdmi_connector_destroy(struct drm_connector *connector) > > } > > > > static struct drm_connector_funcs hdmi_connector_funcs = { > > - .dpms = drm_helper_connector_dpms, > > + .dpms = drm_atomic_helper_connector_dpms, > > .fill_modes = drm_helper_probe_single_connector_modes, > > .detect = hdmi_detect, > > .destroy = hdmi_connector_destroy, > > @@ -2127,8 +2127,8 @@ static void hdmi_dpms(struct exynos_drm_display *display, int mode) > > */ > > if (crtc) > > funcs = crtc->helper_private; > > - if (funcs && funcs->dpms) > > - (*funcs->dpms)(crtc, mode); > > + if (funcs && funcs->disable) > > + (*funcs->disable)(crtc, mode); > > This patch makes funcs->disable callback to be called instead of > funcs->dpms callback. However, funcs->disable callback isn't required > for second argument so the build is failed like below, > > drivers/gpu/drm/exynos/exynos_hdmi.c: In function 'hdmi_dpms': > drivers/gpu/drm/exynos/exynos_hdmi.c:2131:4: error: too many arguments > to function 'funcs->disable' > > Please, keep in mind that you should build it and at least have a > basic test before posting. Sure, I think this happened because I've been using exynos_defconfig to test my kernels and HDMI is not there. Maybe should we add the EXYNOS_DRM_HDMI to defconfig? What do you think? Gustavo _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel