pm: sometimes wake up from suspend to RAM would fail

Sometimes it fails to wake up from suspend to RAM, this is because
we would flush the data cache by assemble command FLUSHINV before
suspend to RAM, and there is a delay between this command execution
and cache flush completion. Add a 1uS delay to works around this.

Signed-off-by: Aaron Wu <Aaron.wu@analog.com>
This commit is contained in:
Aaron Wu 2014-10-22 13:45:58 +08:00 коммит произвёл Steven Miao
Родитель bb717b33aa
Коммит ef7dcaf1e7
1 изменённых файлов: 2 добавлений и 0 удалений

Просмотреть файл

@ -14,6 +14,7 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/irq.h> #include <linux/irq.h>
#include <linux/delay.h>
#include <asm/cplb.h> #include <asm/cplb.h>
#include <asm/gpio.h> #include <asm/gpio.h>
@ -180,6 +181,7 @@ int bfin_pm_suspend_mem_enter(void)
#if defined(CONFIG_BFIN_EXTMEM_WRITEBACK) || defined(CONFIG_BFIN_L2_WRITEBACK) #if defined(CONFIG_BFIN_EXTMEM_WRITEBACK) || defined(CONFIG_BFIN_L2_WRITEBACK)
flushinv_all_dcache(); flushinv_all_dcache();
udelay(1);
#endif #endif
_disable_dcplb(); _disable_dcplb();
_disable_icplb(); _disable_icplb();