From: Zheng Yang Date: Wed, 25 Mar 2015 10:46:56 +0000 (+0800) Subject: HDMI: fix feature SUPPORT_TMDS_600M filter error. X-Git-Tag: firefly_0821_release~4232 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=04aca3a5633e9f2842a1c7eb8326b36b92eb43db;p=firefly-linux-kernel-4.4.55.git HDMI: fix feature SUPPORT_TMDS_600M filter error. For some sink device, it's max tmdsclk is only 300M, but it support 4K YUV420 mode, so it can be filted by feature SUPPORT_TMDS_600M under current code. Signed-off-by: Zheng Yang --- diff --git a/drivers/video/rockchip/hdmi/rockchip-hdmi-lcdc.c b/drivers/video/rockchip/hdmi/rockchip-hdmi-lcdc.c index 21d8f4e14165..51248470f2c9 100644 --- a/drivers/video/rockchip/hdmi/rockchip-hdmi-lcdc.c +++ b/drivers/video/rockchip/hdmi/rockchip-hdmi-lcdc.c @@ -450,17 +450,16 @@ static void hdmi_sort_modelist(struct hdmi_edid *edid, int feature) vic = modelist->vic & HDMI_VIC_MASK; if (vic == hdmi_mode[i].vic || vic == hdmi_mode[i].vic_2nd) { - if ((((feature & SUPPORT_TMDS_600M) == 0 && - !(modelist->vic & HDMI_VIDEO_YUV420)) || - edid->maxtmdsclock < 340000000) && - hdmi_mode[i].mode.pixclock > 340000000) - continue; if ((feature & SUPPORT_4K) == 0 && hdmi_mode[i].mode.xres >= 3840) continue; if ((feature & SUPPORT_4K_4096) == 0 && hdmi_mode[i].mode.xres == 4096) continue; + if ((feature & SUPPORT_TMDS_600M) == 0 && + !(modelist->vic & HDMI_VIDEO_YUV420) && + hdmi_mode[i].mode.pixclock > 340000000) + continue; if ((modelist->vic & HDMI_VIDEO_YUV420) && (feature & SUPPORT_YUV420) == 0) continue;