drm/exynos: mixer: add experimental support for 1024x600@43Hz mode 52/57952/1 tizen
authorMarek Szyprowski <m.szyprowski@samsung.com>
Tue, 26 Jan 2016 08:45:13 +0000 (09:45 +0100)
committerMarek Szyprowski <m.szyprowski@samsung.com>
Tue, 26 Jan 2016 08:52:53 +0000 (09:52 +0100)
This patch adds experimental configuration data for HDMI PHY for 32MHz
pixel clock modes. This enables support for WaveShare 7inch HDMI LCD (C)
HDMI panel.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I840da27e5d496b4abf04e9fe2380f678cfd990ef

drivers/gpu/drm/exynos/exynos_hdmi.c
drivers/gpu/drm/exynos/exynos_mixer.c

index adbccad..9f59fc7 100644 (file)
@@ -305,6 +305,15 @@ static const struct hdmiphy_config hdmiphy_v14_configs[] = {
                },
        },
        {
+               .pixel_clock = 32000000,
+               .conf = {
+                       0x01, 0x51, 0x28, 0x55, 0x40, 0x01, 0x00, 0x08,
+                       0x82, 0x80, 0x0e, 0xd9, 0x45, 0xa0, 0xac, 0x80,
+                       0x08, 0x80, 0x11, 0x04, 0x02, 0x22, 0x44, 0x86,
+                       0x54, 0xc2, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
+               },
+       },
+       {
                .pixel_clock = 36000000,
                .conf = {
                        0x01, 0x51, 0x2d, 0x55, 0x40, 0x01, 0x00, 0x08,
@@ -470,6 +479,15 @@ static const struct hdmiphy_config hdmiphy_5420_configs[] = {
                },
        },
        {
+               .pixel_clock = 32000000,
+               .conf = {
+                       0x01, 0x51, 0x28, 0x55, 0x40, 0x40, 0x00, 0xC8,
+                       0x02, 0xC8, 0x0E, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
+                       0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
+                       0x54, 0xC1, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
+               },
+       },
+       {
                .pixel_clock = 36000000,
                .conf = {
                        0x01, 0x51, 0x2D, 0x55, 0x40, 0x40, 0x00, 0xC8,
index 8740041..e068c88 100644 (file)
@@ -309,9 +309,7 @@ static void mixer_cfg_rgb_fmt(struct mixer_context *ctx, unsigned int height)
        struct mixer_resources *res = &ctx->mixer_res;
        u32 val;
 
-       if (height == 480) {
-               val = MXR_CFG_RGB601_0_255;
-       } else if (height == 576) {
+       if (height == 480 || height == 576 || height == 600) {
                val = MXR_CFG_RGB601_0_255;
        } else if (height == 720) {
                val = MXR_CFG_RGB709_16_235;