lkml.org 
[lkml]   [2016]   [Sep]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3/4] drm/fsl-dcu: update all registers on flush
    Date
    Use the UPDATE_MODE READREG bit to initiate a register transfer
    on flush. This makes sure that we flush all registers only once
    for all planes.

    Signed-off-by: Stefan Agner <stefan@agner.ch>
    ---
    drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 3 +++
    drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c | 5 -----
    2 files changed, 3 insertions(+), 5 deletions(-)

    diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c
    index d30b61e..62eb284 100644
    --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c
    +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c
    @@ -27,6 +27,9 @@ static void fsl_dcu_drm_crtc_atomic_flush(struct drm_crtc *crtc,
    {
    struct drm_pending_vblank_event *event = crtc->state->event;

    + regmap_write(fsl_dev->regmap,
    + DCU_UPDATE_MODE, DCU_UPDATE_MODE_READREG);
    +
    if (event) {
    crtc->state->event = NULL;

    diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c
    index a6af3d9..d7412ff 100644
    --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c
    +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c
    @@ -160,11 +160,6 @@ static void fsl_dcu_drm_plane_atomic_update(struct drm_plane *plane,
    DCU_LAYER_POST_SKIP(0) |
    DCU_LAYER_PRE_SKIP(0));
    }
    - regmap_update_bits(fsl_dev->regmap, DCU_DCU_MODE,
    - DCU_MODE_DCU_MODE_MASK,
    - DCU_MODE_DCU_MODE(DCU_MODE_NORMAL));
    - regmap_write(fsl_dev->regmap,
    - DCU_UPDATE_MODE, DCU_UPDATE_MODE_READREG);

    return;
    }
    --
    2.9.3
    \
     
     \ /
      Last update: 2016-09-17 09:58    [W:2.271 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site