[brcm63xx] fix reboot hang on bcm6345, thanks AndyI
authorFlorian Fainelli <florian@openwrt.org>
Wed, 2 Sep 2009 08:32:00 +0000 (08:32 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Wed, 2 Sep 2009 08:32:00 +0000 (08:32 +0000)
SVN-Revision: 17465

target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c

index 95760ae44afeb04fec08661e0eac62a755752736..6d1ce6442e4e709cfb3955b702f48b669759e12e 100644 (file)
@@ -73,7 +73,9 @@ void bcm63xx_machine_reboot(void)
                bcm6348_a1_reboot();
 
        printk(KERN_INFO "triggering watchdog soft-reset...\n");
-       bcm_perf_writel(SYS_PLL_SOFT_RESET, PERF_SYS_PLL_CTL_REG);
+       reg = bcm_perf_readl(PERF_SYS_PLL_CTL_REG);
+       reg |= SYS_PLL_SOFT_RESET;
+       bcm_perf_writel(reg, PERF_SYS_PLL_CTL_REG);
        while (1);
 }