drm/exynos: mixer: add experimental support for 1024x600@43Hz mode 54/57954/2 old/tizen_20160405
authorMarek Szyprowski <m.szyprowski@samsung.com>
Tue, 26 Jan 2016 08:45:13 +0000 (09:45 +0100)
committerMarek Szyprowski <m.szyprowski@samsung.com>
Mon, 8 Feb 2016 11:46:21 +0000 (03:46 -0800)
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: I2f711ef21ce21da58b8efaf6f6dd28c5e2d2e8fc

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

index 1b6707c69ae93c0ec3da2718440c5dd205bf5e5e..3c56bdbae3c44cd0f23a710c71fd5c0f48c1c403 100644 (file)
@@ -300,6 +300,15 @@ static const struct hdmiphy_config hdmiphy_v14_configs[] = {
                        0x54, 0xe3, 0x24, 0x00, 0x00, 0x00, 0x01, 0x00,
                },
        },
+       {
+               .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 = {
@@ -456,6 +465,15 @@ static const struct hdmiphy_config hdmiphy_5420_configs[] = {
                        0x54, 0xE3, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
                },
        },
+       {
+               .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 = {
index 3d3041ae709612f9812eeaf0f53ec8b8ccbe766a..a9a626a8584eda5ac07a7b7ba228c35d7275e5a3 100644 (file)
@@ -313,9 +313,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;