[PATCH v2 00/23] drm/exynos: atomic improvements + exynos_encoder removal

2015-07-16 Thread Gustavo Padovan
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

2015-07-14 Thread 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 

>   
>   
> 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

2015-07-06 Thread Gustavo Padovan
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.  

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