rk29: reset: reset GRF_MEM_CON while reboot to bootloader
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-rk29 / reset.c
index d3e4ca5b985968f8dc14a0cc37d35622f3499cc9..c54a995965f63512bb3420e0126391e6a8a47992 100755 (executable)
@@ -100,6 +100,10 @@ static void __sramfunc __noreturn rk29_rb_with_softreset(void)
        dsb();\r
        LOOP(10 * LOOPS_PER_USEC);\r
 \r
+       /* reset GRF_MEM_CON, else bootloader usb function may not work properly */\r
+       writel(0, RK29_GRF_PHYS + 0xac);\r
+       dsb();\r
+\r
        if (reason) {\r
                __raw_writel(0, RK29_TIMER0_PHYS + 0x8);\r
                __raw_writel(reason, RK29_TIMER0_PHYS + 0x0);\r