drm/exynos: gsc: Add limited support for ARGB8888 format 64/173064/2
authorMarek Szyprowski <m.szyprowski@samsung.com>
Mon, 19 Mar 2018 10:06:57 +0000 (11:06 +0100)
committerMarek Szyprowski <m.szyprowski@samsung.com>
Mon, 26 Mar 2018 13:14:54 +0000 (15:14 +0200)
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I4f0314693a953caf5d58646281ad72ff354edea2

drivers/gpu/drm/exynos/exynos_drm_gsc.c

index 60a23b7dac4f24f594cc13c3dc26903227791887..e99dd1e4ba652ef493e7bec2e92642f5611ee492 100644 (file)
@@ -465,6 +465,7 @@ static void gsc_src_set_fmt(struct gsc_context *ctx, u32 fmt)
                cfg |= GSC_IN_RGB565;
                break;
        case DRM_FORMAT_XRGB8888:
+       case DRM_FORMAT_ARGB8888:
                cfg |= GSC_IN_XRGB8888;
                break;
        case DRM_FORMAT_BGRX8888:
@@ -643,8 +644,9 @@ static void gsc_dst_set_fmt(struct gsc_context *ctx, u32 fmt)
        case DRM_FORMAT_RGB565:
                cfg |= GSC_OUT_RGB565;
                break;
+       case DRM_FORMAT_ARGB8888:
        case DRM_FORMAT_XRGB8888:
-               cfg |= GSC_OUT_XRGB8888;
+               cfg |= (GSC_OUT_XRGB8888 | GSC_OUT_GLOBAL_ALPHA(0xff));
                break;
        case DRM_FORMAT_BGRX8888:
                cfg |= (GSC_OUT_XRGB8888 | GSC_OUT_RB_SWAP);
@@ -1180,6 +1182,7 @@ static const struct component_ops gsc_component_ops = {
 };
 
 static const unsigned int gsc_formats[] = {
+       DRM_FORMAT_ARGB8888,
        DRM_FORMAT_XRGB8888, DRM_FORMAT_RGB565, DRM_FORMAT_BGRX8888,
        DRM_FORMAT_NV12, DRM_FORMAT_NV16, DRM_FORMAT_NV21, DRM_FORMAT_NV61,
        DRM_FORMAT_UYVY, DRM_FORMAT_VYUY, DRM_FORMAT_YUYV, DRM_FORMAT_YVYU,