diff --git a/drivers/video/rockchip/hdmi/rockchip-hdmi-core.c b/drivers/video/rockchip/hdmi/rockchip-hdmi-core.c index 286fdec3a998..85f7954734c3 100644 --- a/drivers/video/rockchip/hdmi/rockchip-hdmi-core.c +++ b/drivers/video/rockchip/hdmi/rockchip-hdmi-core.c @@ -485,8 +485,11 @@ struct hdmi *rockchip_hdmi_register(struct hdmi_property *property, hdmi->hotplug = HDMI_HPD_REMOVED; hdmi->autoset = HDMI_AUTO_CONFIG; if (uboot_vic > 0) { - hdmi->vic = uboot_vic; - hdmi->uboot = 1; + hdmi->vic = uboot_vic & HDMI_UBOOT_VIC_MASK; + if (uboot_vic & HDMI_UBOOT_NOT_INIT) + hdmi->uboot = 0; + else + hdmi->uboot = 1; hdmi->autoset = 0; } else if (hdmi->autoset) { hdmi->vic = 0; diff --git a/drivers/video/rockchip/hdmi/rockchip-hdmi.h b/drivers/video/rockchip/hdmi/rockchip-hdmi.h index c9ddfda57eff..7e319aed7858 100644 --- a/drivers/video/rockchip/hdmi/rockchip-hdmi.h +++ b/drivers/video/rockchip/hdmi/rockchip-hdmi.h @@ -17,6 +17,9 @@ #define HDMI_TYPE_MASK (0xFF << 8) #define HDMI_MAX_ID 4 +#define HDMI_UBOOT_NOT_INIT (1 << 16) +#define HDMI_UBOOT_VIC_MASK 0xFFFF + /* HDMI video information code according CEA-861-F */ enum hdmi_video_infomation_code { HDMI_640X480P_60HZ = 1,