before disable lcdc clk,we must make sure
the lcdc enter stanby and finish read or write
the lcdc register。
Before this commit,some hdmi hotplug crash made
by thie issue
spin_lock(&lcdc_dev->reg_lock);
lcdc_dev->clk_on = 0;
spin_unlock(&lcdc_dev->reg_lock);
-
+ mdelay(25);
clk_disable(lcdc_dev->dclk);
clk_disable(lcdc_dev->hclk);
clk_disable(lcdc_dev->aclk);
if((!open) && (!lcdc_dev->atv_layer_cnt)) //when all layer closed,disable clk
{
+ lcdc_msk_reg(lcdc_dev,INT_STATUS,m_FS_INT_CLEAR,v_FS_INT_CLEAR(1));
+ rk3188_lcdc_reg_update(dev_drv);
rk3188_lcdc_clk_disable(lcdc_dev);
}
return 0;
}
- mdelay(25);
rk3188_lcdc_clk_disable(lcdc_dev);
return 0;
}