mfd:rk616:modify some operation for vif
[firefly-linux-kernel-4.4.55.git] / drivers / video / rockchip / hdmi / rk_hdmi_task.c
index 82be97724ff2ef19c1e00654210b1128ba380e59..9148464f20b05aee0f7160dfafa92cfb35935777 100755 (executable)
@@ -80,6 +80,8 @@ void hdmi_sys_remove(void)
        memset(&hdmi->edid, 0, sizeof(struct hdmi_edid));
        INIT_LIST_HEAD(&hdmi->edid.modelist);
        hdmi->display   = HDMI_DISABLE;
+       if(hdmi->set_vif)
+               hdmi->set_vif(hdmi->lcdc->screen1,0);
        rk_fb_switch_screen(hdmi->lcdc->screen1, 0, hdmi->lcdc->id);
        kobject_uevent_env(&hdmi->dev->kobj, KOBJ_REMOVE, envp);
        #ifdef CONFIG_SWITCH
@@ -232,6 +234,7 @@ void hdmi_work(struct work_struct *work)
                                }
                                break;
                        case SYSTEM_CONFIG:
+                               hdmi->remove();
                                if(hdmi->autoconfig)    
                                        hdmi->vic = hdmi_find_best_mode(hdmi, 0);
                                else