[PATCH 00/13] updated exynos-drm-fixes

Inki Dae inki.dae at samsung.com
Fri Aug 17 02:50:46 PDT 2012


Hello all,

This patch set fixes the following:
. fixed page align
  - page align is done by exynos_drm_gem_create() so do not align
    in page unit at exynos_drm_gem_dumb_create().
. removed unnecessary dpms call
  - encoder's mode_set callback isn't specific to hardware so
    it doesn't need to call exynos_drm_encoder_dpms()
. control display power at connector module
  - it doesn't need that display power is controlled by encoder's dpms
    so moves it into connector module so that the display power can be
    controlled by connector's dpms properly.
. make sure that hardware overlay for fimd and hdmi is disabled
  - the values set to registers will be updated into real registers
    at vsync so dma operation could be malfunctioned when accessed
    to memory after gem buffer was released. this patch makes sure
    that hw overlay is disabled before the gem buffer is released.
. check NV12M format specific to Exynos properly
  - this patch adds buf_cnt variable in exynos_drm_fb structure and
    that means a buffer count to drm framebuffer and also adds two
    functions to get/set the buffer count from/to exynos_drm_fb structure.
    if pixel format is not DRM_FORMAT_NV12MT then it gets a buffer count
    to drm framebuffer refering to mode_cmd->handles and offsets.
    but when booted, the buffer count will always be 1 because pixel
    format of console framebuffer is RGB format.
. updated crtc to plane safely
  - if old_crtc isn't same as encoder->crtc then it means that
    user changed crtc id to another one so a plane to old_crtc
    should be disabled so that current plane can be updated safely
    and plane->crtc should be set to new crtc(encoder->crtc)

And code clean like below:
. separated fimd_power_on into some parts
  - separated fimd_power_on into fimd_activate and fimd_clock functions
    and fimd_activate function will call fimd_clock to control fimd power
    and vsync interrupt.
. separated subdrv->probe call and encoder/connector creation
  - with this patch, exynos drm core module can take exception when some
    operation was failed properly.
. changed context name of hdmi and mixer
  - changed ctx variable name in exynos_drm_hdmi_context structure to client
    because the use of ctx variable name makes it confused.
. fixed build warning

Thanks.

Inki Dae (13):
  drm/exynos: added device object to subdrv's remove callback as
    argument
  drm/exynos: separated subdrv->probe call and encoder/connector
    creation.
  drm/exynos: fixed page align bug.
  drm/exynos: use empty function instead of drm_helper_connector_dpms
  drm/exynos: removed exynos_drm_encoder_dpms call
  drm/exynos: separeated fimd_power_on into some parts.
  drm/exynos: control display power at connector module.
  drm/exynos: make sure that hardware overlay for fimd is disabled
  drm/exynos: check NV12M format specific to Exynos properly
  drm/exynos: update crtc to plane safely
  drm/exynos: changed context name of hdmi and mixer
  drm/exynos: fixed build warning
  drm/exynos: make sure that hardware overlay for hdmi is disabled

 drivers/gpu/drm/exynos/exynos_drm_connector.c |   18 +++++-
 drivers/gpu/drm/exynos/exynos_drm_core.c      |   93 +++++++++++++++++--------
 drivers/gpu/drm/exynos/exynos_drm_drv.h       |   19 +++++-
 drivers/gpu/drm/exynos/exynos_drm_encoder.c   |   92 +++++++++++++++++-------
 drivers/gpu/drm/exynos/exynos_drm_fb.c        |   65 ++++++++++++++++-
 drivers/gpu/drm/exynos/exynos_drm_fb.h        |   20 ++----
 drivers/gpu/drm/exynos/exynos_drm_fbdev.c     |    3 +
 drivers/gpu/drm/exynos/exynos_drm_fimd.c      |   74 ++++++++++++++------
 drivers/gpu/drm/exynos/exynos_drm_gem.c       |    2 +-
 drivers/gpu/drm/exynos/exynos_drm_hdmi.c      |   47 ++++++++-----
 drivers/gpu/drm/exynos/exynos_drm_hdmi.h      |    5 +-
 drivers/gpu/drm/exynos/exynos_drm_plane.c     |    2 +-
 drivers/gpu/drm/exynos/exynos_drm_vidi.c      |    2 +-
 drivers/gpu/drm/exynos/exynos_hdmi.c          |   12 ++--
 drivers/gpu/drm/exynos/exynos_mixer.c         |   21 +++++-
 15 files changed, 349 insertions(+), 126 deletions(-)

-- 
1.7.4.1



More information about the dri-devel mailing list