aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2008-01-06 19:28:07 +0000
committerFelix Fietkau <nbd@openwrt.org>2008-01-06 19:28:07 +0000
commit19887d557e01aad2145fa3ad086bc12a8d04695a (patch)
tree58af9e3b3204308a2b7853127331f4d693e1b744 /target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c
parent666f303b8f8a76ca44b62a58ae270d520944897b (diff)
downloadmaster-187ad058-19887d557e01aad2145fa3ad086bc12a8d04695a.tar.gz
master-187ad058-19887d557e01aad2145fa3ad086bc12a8d04695a.tar.bz2
master-187ad058-19887d557e01aad2145fa3ad086bc12a8d04695a.zip
update brcm-2.4 to 2.4.35.4, integrate new broadcom system code, update broadcom-wl to a contributed version (v4.150.10.5) - no bcm57xx support yet, will follow shortly
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10137 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c')
-rw-r--r--target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c
index 9c502be580..03d5c85651 100644
--- a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c
+++ b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c
@@ -23,11 +23,12 @@
#include <osl.h>
#include <bcmnvram.h>
#include <sbconfig.h>
-#include <sbextif.h>
#include <sbutils.h>
+#include <sbchipc.h>
#include <hndmips.h>
#include <mipsinc.h>
#include <hndcpu.h>
+#include <bcmdevs.h>
/* Global SB handle */
extern void *bcm947xx_sbh;
@@ -39,13 +40,11 @@ extern spinlock_t bcm947xx_sbh_lock;
extern int panic_timeout;
static int watchdog = 0;
-static u8 *mcr = NULL;
void __init
bcm947xx_time_init(void)
{
unsigned int hz;
- extifregs_t *eir;
/*
* Use deterministic values for initial counter interrupt
@@ -83,8 +82,13 @@ bcm947xx_timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
timer_interrupt(irq, dev_id, regs);
/* Set the watchdog timer to reset after the specified number of ms */
- if (watchdog > 0)
- sb_watchdog(sbh, WATCHDOG_CLOCK / 1000 * watchdog);
+ if (watchdog > 0) {
+ if (sb_chip(sbh) == BCM5354_CHIP_ID)
+ sb_watchdog(sbh, WATCHDOG_CLOCK_5354 / 1000 * watchdog);
+ else
+ sb_watchdog(sbh, WATCHDOG_CLOCK / 1000 * watchdog);
+ }
+
}
static struct irqaction bcm947xx_timer_irqaction = {