aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2009-09-02 08:32:00 +0000
committerFlorian Fainelli <florian@openwrt.org>2009-09-02 08:32:00 +0000
commit294ec33e476f1964e618442a84dc35677c85b8b5 (patch)
tree2648da47251f064cb06e0159fee8351fb338f364 /target/linux
parent552e298755bc66211fae3748ff5c2ec24d1b199e (diff)
downloadupstream-294ec33e476f1964e618442a84dc35677c85b8b5.tar.gz
upstream-294ec33e476f1964e618442a84dc35677c85b8b5.tar.bz2
upstream-294ec33e476f1964e618442a84dc35677c85b8b5.zip
fix reboot hang on bcm6345, thanks AndyI
SVN-Revision: 17465
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c b/target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c
index 95760ae44a..6d1ce6442e 100644
--- a/target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c
+++ b/target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c
@@ -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);
}