lkml.org 
[lkml]   [2018]   [Oct]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.18 129/228] drm/vc4: plane: Expand the lower bits by repeating the higher bits
    Date
    4.18-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Maxime Ripard <maxime.ripard@bootlin.com>

    [ Upstream commit 3257ec797d3a8c5232389eb1952d4451e80f3931 ]

    The vc4 HVS uses an internal RGB888 representation of the frames, and will
    by default expand formats using a lower depth using zeros.

    This causes an issue when we try to use other compositing software such as
    pixman that fill the missing bits by repeating the higher significant bits.
    As such, we can't check the display output in a reliable way by doing a
    software composition and an hardware one and compare both.

    To prevent this, force the same behaviour so that we can do such things.

    Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Link: https://patchwork.freedesktop.org/patch/msgid/20180517133759.25626-1-maxime.ripard@bootlin.com
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/gpu/drm/vc4/vc4_plane.c | 1 +
    1 file changed, 1 insertion(+)

    --- a/drivers/gpu/drm/vc4/vc4_plane.c
    +++ b/drivers/gpu/drm/vc4/vc4_plane.c
    @@ -543,6 +543,7 @@ static int vc4_plane_mode_set(struct drm
    /* Control word */
    vc4_dlist_write(vc4_state,
    SCALER_CTL0_VALID |
    + VC4_SET_FIELD(SCALER_CTL0_RGBA_EXPAND_ROUND, SCALER_CTL0_RGBA_EXPAND) |
    (format->pixel_order << SCALER_CTL0_ORDER_SHIFT) |
    (format->hvs << SCALER_CTL0_PIXEL_FORMAT_SHIFT) |
    VC4_SET_FIELD(tiling, SCALER_CTL0_TILING) |

    \
     
     \ /
      Last update: 2022-09-17 16:04    [W:2.685 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site