rk3368 lcdc: fix iommu crash when resume
authorhjc <hjc@rock-chips.com>
Mon, 25 May 2015 08:01:12 +0000 (16:01 +0800)
committerhjc <hjc@rock-chips.com>
Mon, 25 May 2015 08:52:38 +0000 (16:52 +0800)
Signed-off-by: hjc <hjc@rock-chips.com>
drivers/video/rockchip/lcdc/rk3368_lcdc.c

index cc9c2b7475f4c56202fc34a1725cb37bf0548077..dd469c27a81a9c24bf3211daa0730de8817821d0 100755 (executable)
@@ -3315,6 +3315,10 @@ static int rk3368_lcdc_early_resume(struct rk_lcdc_driver *dev_drv)
                lcdc_cfg_done(lcdc_dev);
 
                if (dev_drv->iommu_enabled) {
+                       /* win address maybe effect after next frame start,
+                        * but mmu maybe effect right now, so we delay 50ms
+                        */
+                       mdelay(50);
                        if (dev_drv->mmu_dev)
                                rockchip_iovmm_activate(dev_drv->dev);
                }