[PATCH v2 00/23] drm/exynos: atomic improvements + exynos_encoder removal
2015-07-14 Joonyoung Shim : > On 07/06/2015 11:20 PM, Gustavo Padovan wrote: > > From: Gustavo Padovan > > > > Hi, > > > > This set improves exynos in a number of ways. The first five patches are > > general clean up/fixes. > > > > Patches 06 to 12 are improvements on top of the newly added atomic > > modesetting > > support. > > > > Patches 13-23 are a big journey to completely remove the internal > > exynos_drm_encoder struct. Now exynos encoders register themselves directly > > with the drm core. > > I got compile error with 13-23 patches. > > drivers/gpu/drm/exynos/exynos_drm_dsi.c: In function âexynos_dsi_bindâ: > drivers/gpu/drm/exynos/exynos_drm_dsi.c:1839:3: error: âdisplayâ > undeclared (first use in this function) >display->encoder->bridge = bridge; >^ > drivers/gpu/drm/exynos/exynos_drm_dsi.c:1839:3: note: each undeclared > identifier is reported only once for each function it appears in > make[4]: *** [drivers/gpu/drm/exynos/exynos_drm_dsi.o] Error 1 > > > If you post the stuff that only be related, it will be reviewed and > merged easier. > > 01-04 and 06-11 patches look good to me, about them, > Reviewed-by: Joonyoung Shim Sure, I've resent only the patch with your Reviewed-by in a separate patchset. The others will come in another patcheset. Gustavo
[PATCH v2 00/23] drm/exynos: atomic improvements + exynos_encoder removal
On 07/06/2015 11:20 PM, Gustavo Padovan wrote: > From: Gustavo Padovan > > Hi, > > > > This set improves exynos in a number of ways. The first five patches are > > general clean up/fixes. > > > > Patches 06 to 12 are improvements on top of the newly added atomic > modesetting > support. > > > > Patches 13-23 are a big journey to completely remove the internal > > exynos_drm_encoder struct. Now exynos encoders register themselves directly > > with the drm core. I got compile error with 13-23 patches. drivers/gpu/drm/exynos/exynos_drm_dsi.c: In function âexynos_dsi_bindâ: drivers/gpu/drm/exynos/exynos_drm_dsi.c:1839:3: error: âdisplayâ undeclared (first use in this function) display->encoder->bridge = bridge; ^ drivers/gpu/drm/exynos/exynos_drm_dsi.c:1839:3: note: each undeclared identifier is reported only once for each function it appears in make[4]: *** [drivers/gpu/drm/exynos/exynos_drm_dsi.o] Error 1 If you post the stuff that only be related, it will be reviewed and merged easier. 01-04 and 06-11 patches look good to me, about them, Reviewed-by: Joonyoung Shim > > > v2: Fix comments by Joonyoung > > - add an extra commit to check crtc->enable_vblank() value > > - directly assign the vrefresh without checking for zero > > - don't remove FIMD ctc->suspended check > > > > Please review! > > > > Gustavo > > Gustavo Padovan (23): > drm/exynos: pass the correct pipe number > drm/exynos: calculate vrefresh instead of use a fixed value > drm/exynos: use KMS version of DRM vblanks functions > drm/exynos: remove duplicated check for suspend > drm/exynos: add atomic asynchronous commit > drm/exynos: rename win_commit/disable to atomic-like names > drm/exynos: pass struct exynos_drm_plane in update/enable > drm/exynos: use drm atomic state directly > drm/exynos: remove unused fields from struct exynos_drm_plane > drm/exynos: unify exynos_drm_plane names with drm core > drm/exynos: return return value of exynos_crtc->enable_vblank > drm/exynos: don't track enabled state at exynos_crtc > drm/exynos: split display's .dpms() into .enable() and .disable() > drm/exynos: remove wrappers for phy_power_{on,off} > drm/exynos: remove unused .remove() and .check_mode() ops from display > drm/exynos: simplify calculation of possible CRTCs > drm/exynos: remove struct exynos_drm_display > drm/exynos: remove extra call to hdmi_commit() > drm/exynos: remove extra call to exynos_dp_commit() > drm/exynos: remove exynos_encoder's .commit() op > drm/exynos: remove exynos_drm_create_enc_conn() > drm/exynos: fold encoder setup into exynos_drm_load() > drm/exynos: remove struct exynos_drm_encoder layer > > drivers/gpu/drm/exynos/Makefile | 7 +- > drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 57 - > drivers/gpu/drm/exynos/exynos7_drm_decon.c| 86 ++--- > drivers/gpu/drm/exynos/exynos_dp_core.c | 122 +- > drivers/gpu/drm/exynos/exynos_dp_core.h | 3 +- > drivers/gpu/drm/exynos/exynos_drm_core.c | 36 -- > drivers/gpu/drm/exynos/exynos_drm_crtc.c | 35 ++ > drivers/gpu/drm/exynos/exynos_drm_crtc.h | 4 +- > drivers/gpu/drm/exynos/exynos_drm_dpi.c | 96 +++--- > drivers/gpu/drm/exynos/exynos_drm_drv.c | 19 ++- > drivers/gpu/drm/exynos/exynos_drm_drv.h | 115 + > drivers/gpu/drm/exynos/exynos_drm_dsi.c | 129 ++- > drivers/gpu/drm/exynos/exynos_drm_encoder.c | 174 > -- > drivers/gpu/drm/exynos/exynos_drm_encoder.h | 23 > drivers/gpu/drm/exynos/exynos_drm_fb.c| 51 ++-- > drivers/gpu/drm/exynos/exynos_drm_fimd.c | 95 +++--- > drivers/gpu/drm/exynos/exynos_drm_plane.c | 31 ++--- > drivers/gpu/drm/exynos/exynos_drm_vidi.c | 107 +--- > drivers/gpu/drm/exynos/exynos_hdmi.c | 168 - > drivers/gpu/drm/exynos/exynos_mixer.c | 111 > 20
[PATCH v2 00/23] drm/exynos: atomic improvements + exynos_encoder removal
From: Gustavo PadovanHi, This set improves exynos in a number of ways. The first five patches are general clean up/fixes. Patches 06 to 12 are improvements on top of the newly added atomic modesetting support. Patches 13-23 are a big journey to completely remove the internal exynos_drm_encoder struct. Now exynos encoders register themselves directly with the drm core. v2: Fix comments by Joonyoung - add an extra commit to check crtc->enable_vblank() value - directly assign the vrefresh without checking for zero - don't remove FIMD ctc->suspended check Please review! Gustavo Gustavo Padovan (23): drm/exynos: pass the correct pipe number drm/exynos: calculate vrefresh instead of use a fixed value drm/exynos: use KMS version of DRM vblanks functions drm/exynos: remove duplicated check for suspend drm/exynos: add atomic asynchronous commit drm/exynos: rename win_commit/disable to atomic-like names drm/exynos: pass struct exynos_drm_plane in update/enable drm/exynos: use drm atomic state directly drm/exynos: remove unused fields from struct exynos_drm_plane drm/exynos: unify exynos_drm_plane names with drm core drm/exynos: return return value of exynos_crtc->enable_vblank drm/exynos: don't track enabled state at exynos_crtc drm/exynos: split display's .dpms() into .enable() and .disable() drm/exynos: remove wrappers for phy_power_{on,off} drm/exynos: remove unused .remove() and .check_mode() ops from display drm/exynos: simplify calculation of possible CRTCs drm/exynos: remove struct exynos_drm_display drm/exynos: remove extra call to hdmi_commit() drm/exynos: remove extra call to exynos_dp_commit() drm/exynos: remove exynos_encoder's .commit() op drm/exynos: remove exynos_drm_create_enc_conn() drm/exynos: fold encoder setup into exynos_drm_load() drm/exynos: remove struct exynos_drm_encoder layer drivers/gpu/drm/exynos/Makefile | 7 +- drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 57 - drivers/gpu/drm/exynos/exynos7_drm_decon.c| 86 ++--- drivers/gpu/drm/exynos/exynos_dp_core.c | 122 +- drivers/gpu/drm/exynos/exynos_dp_core.h | 3 +- drivers/gpu/drm/exynos/exynos_drm_core.c | 36 -- drivers/gpu/drm/exynos/exynos_drm_crtc.c | 35 ++ drivers/gpu/drm/exynos/exynos_drm_crtc.h | 4 +- drivers/gpu/drm/exynos/exynos_drm_dpi.c | 96 +++--- drivers/gpu/drm/exynos/exynos_drm_drv.c | 19 ++- drivers/gpu/drm/exynos/exynos_drm_drv.h | 115 + drivers/gpu/drm/exynos/exynos_drm_dsi.c | 129 ++- drivers/gpu/drm/exynos/exynos_drm_encoder.c | 174 -- drivers/gpu/drm/exynos/exynos_drm_encoder.h | 23 drivers/gpu/drm/exynos/exynos_drm_fb.c| 51 ++-- drivers/gpu/drm/exynos/exynos_drm_fimd.c | 95 +++--- drivers/gpu/drm/exynos/exynos_drm_plane.c | 31 ++--- drivers/gpu/drm/exynos/exynos_drm_vidi.c | 107 +--- drivers/gpu/drm/exynos/exynos_hdmi.c | 168 - drivers/gpu/drm/exynos/exynos_mixer.c | 111 20 files changed, 595 insertions(+), 874 deletions(-) delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_encoder.c delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_encoder.h -- 2.1.0