drm/atmel-hlcdc: set layer REP bit to enable replication logic
authorJoshua.Henderson@microchip.com <Joshua.Henderson@microchip.com>
Tue, 9 Jul 2019 15:35:12 +0000 (15:35 +0000)
committerSam Ravnborg <sam@ravnborg.org>
Fri, 12 Jul 2019 15:48:48 +0000 (17:48 +0200)
This bit enables replication logic to expand an RGB color less than 24
bits, to 24 bits, which is used internally for all formats.  Otherwise,
the least significant bits are always set to zero and the color may not
be what is expected.

Signed-off-by: Joshua Henderson <joshua.henderson@microchip.com>
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/1562686509-8747-1-git-send-email-joshua.henderson@microchip.com
drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c

index 0ee5b7a..776ddc9 100644 (file)
@@ -372,7 +372,7 @@ atmel_hlcdc_plane_update_general_settings(struct atmel_hlcdc_plane *plane,
        atmel_hlcdc_layer_write_cfg(&plane->layer, ATMEL_HLCDC_LAYER_DMA_CFG,
                                    cfg);
 
-       cfg = ATMEL_HLCDC_LAYER_DMA;
+       cfg = ATMEL_HLCDC_LAYER_DMA | ATMEL_HLCDC_LAYER_REP;
 
        if (plane->base.type != DRM_PLANE_TYPE_PRIMARY) {
                cfg |= ATMEL_HLCDC_LAYER_OVR | ATMEL_HLCDC_LAYER_ITER2BL |