mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-18 14:40:17 +02:00
add reboot fix from #1312
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6563 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
c7a59f885d
commit
e7a1c344d4
@ -54,7 +54,7 @@ static void bcm47xx_machine_restart(char *command)
|
||||
*/
|
||||
|
||||
/* Set the watchdog timer to reset immediately */
|
||||
//TODO sb_watchdog(sbh, 1);
|
||||
ssb_chipco_watchdog(&ssb.chipco, 1);
|
||||
while (1)
|
||||
cpu_relax();
|
||||
}
|
||||
@ -63,7 +63,7 @@ static void bcm47xx_machine_halt(void)
|
||||
{
|
||||
/* Disable interrupts and watchdog and spin forever */
|
||||
local_irq_disable();
|
||||
//TODO sb_watchdog(sbh, 0);
|
||||
ssb_chipco_watchdog(&ssb.chipco, 0);
|
||||
while (1)
|
||||
cpu_relax();
|
||||
}
|
||||
|
@ -401,3 +401,13 @@ int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
|
||||
return nr_ports;
|
||||
}
|
||||
#endif /* CONFIG_SSB_SERIAL */
|
||||
|
||||
/* Set chip watchdog reset timer to fire in 'ticks' backplane cycles */
|
||||
int
|
||||
ssb_chipco_watchdog(struct ssb_chipcommon *cc, uint ticks)
|
||||
{
|
||||
/* instant NMI */
|
||||
chipco_write32(cc, SSB_CHIPCO_WATCHDOG, ticks);
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(ssb_chipco_watchdog);
|
||||
|
@ -417,6 +417,7 @@ static inline u32 ssb_chipco_gpio_polarity(struct ssb_chipcommon *cc,
|
||||
}
|
||||
/* TODO: GPIO reservation */
|
||||
|
||||
extern int ssb_chipco_watchdog(struct ssb_chipcommon *cc, uint ticks);
|
||||
|
||||
#ifdef CONFIG_SSB_SERIAL
|
||||
extern int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
|
||||
|
Loading…
Reference in New Issue
Block a user