diff options
author | Marek Szyprowski <m.szyprowski@samsung.com> | 2016-01-26 09:45:13 +0100 |
---|---|---|
committer | Marek Szyprowski <m.szyprowski@samsung.com> | 2016-01-26 09:52:53 +0100 |
commit | a772caa9d4e4102797cca00116c0b3746ac1a179 (patch) | |
tree | 4166521d6ec030ad60246b9b7f566365a1444164 | |
parent | 328e9d32e8774a4f6b2efd453672827a521b869f (diff) | |
download | linux-3.10-a772caa9d4e4102797cca00116c0b3746ac1a179.tar.gz linux-3.10-a772caa9d4e4102797cca00116c0b3746ac1a179.tar.bz2 linux-3.10-a772caa9d4e4102797cca00116c0b3746ac1a179.zip |
drm/exynos: mixer: add experimental support for 1024x600@43Hz modetizen
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
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_hdmi.c | 18 | ||||
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_mixer.c | 4 |
2 files changed, 19 insertions, 3 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c index adbccada0b8..9f59fc7115d 100644 --- a/drivers/gpu/drm/exynos/exynos_hdmi.c +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c @@ -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, diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c index 87400413324..e068c88ac07 100644 --- a/drivers/gpu/drm/exynos/exynos_mixer.c +++ b/drivers/gpu/drm/exynos/exynos_mixer.c @@ -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; |