From: Zheng Yang Date: Sat, 22 Sep 2012 11:09:43 +0000 (+0800) Subject: rk2928:hdmi: For 1080P, enable pre-emphasis to improve singal quality. X-Git-Tag: firefly_0821_release~8588 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b5a25abdd328e4fc4faaa57430febb2382ddcdd1;p=firefly-linux-kernel-4.4.55.git rk2928:hdmi: For 1080P, enable pre-emphasis to improve singal quality. --- diff --git a/drivers/video/rockchip/hdmi/chips/rk2928/rk2928_hdmi_hw.c b/drivers/video/rockchip/hdmi/chips/rk2928/rk2928_hdmi_hw.c index f2e709db6f04..63bff24236c2 100755 --- a/drivers/video/rockchip/hdmi/chips/rk2928/rk2928_hdmi_hw.c +++ b/drivers/video/rockchip/hdmi/chips/rk2928/rk2928_hdmi_hw.c @@ -33,7 +33,6 @@ static void rk2928_hdmi_sys_power_down(void) static void rk2928_hdmi_set_pwr_mode(int mode) { - int c=0; hdmi_dbg(hdmi->dev,"%s \n",__FUNCTION__); if(hdmi->pwr_mode == mode) return; @@ -271,7 +270,13 @@ static int rk2928_hdmi_config_video(struct hdmi_video_para *vpara) else { hdmi_dbg(hdmi->dev, "[%s] sucess output DVI.\n", __FUNCTION__); } - + + if(hdmi->tmdsclk >= 148500000) { + HDMIWrReg(0xe3, 0x4f); + } + else { + HDMIWrReg(0xe3, 0x0f); + } return 0; } diff --git a/drivers/video/rockchip/hdmi/chips/rk2928/rk2928_hdmi_hw.h b/drivers/video/rockchip/hdmi/chips/rk2928/rk2928_hdmi_hw.h old mode 100644 new mode 100755 index fcc6be786bd7..aa4fa1510d69 --- a/drivers/video/rockchip/hdmi/chips/rk2928/rk2928_hdmi_hw.h +++ b/drivers/video/rockchip/hdmi/chips/rk2928/rk2928_hdmi_hw.h @@ -238,7 +238,7 @@ enum { #define v_LDO_PWR_DOWN(n) (n << 2) #define HDMIRdReg(addr) readl_relaxed(hdmi->regbase + (addr) * 0x04) -#define HDMIWrReg(addr, val) writel_relaxed((val), hdmi->regbase + (addr) * 0x04); +#define HDMIWrReg(addr, val) writel_relaxed((val), hdmi->regbase + (addr) * 0x04) #define HDMIMskReg(temp, addr, msk, val) \ temp = readl_relaxed(hdmi->regbase + (addr) * 0x04) & (0xFF - (msk)) ; \ writel_relaxed(temp | ( (val) & (msk) ), hdmi->regbase + (addr) * 0x04);