Update of /cvsroot/linux-mips/linux/drivers/char
In directory usw-pr-cvs1:/tmp/cvs-serv20026
Modified Files:
vr41xxwdt.c
Log Message:
WDT updates.. use the new VR41XX_MACRO naming scheme. Get rid of ugly ifdef
nonsense.
Index: vr41xxwdt.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/vr41xxwdt.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- vr41xxwdt.c 2001/10/24 05:28:03 1.1
+++ vr41xxwdt.c 2001/10/28 03:49:14 1.2
@@ -25,20 +25,9 @@
#include <asm/io.h>
#include <asm/uaccess.h>
-
-#define __preg16(addr) (volatile unsigned short *)(KSEG1 + addr)
+#include <asm/vr41xx.h>
-#if defined(CONFIG_VR4111) || defined(CONFIG_VR4121) || defined(CONFIG_VR4181)
- #define DSUCNTREG __preg16(0x0b0000e0) /* DSU Control Register */
- #define DSUSETREG __preg16(0x0b0000e2) /* DSU Dead Time Set Register */
- #define DSUCLRREG __preg16(0x0b0000e4) /* DSU Clear Register */
- #define DSUTIMREG __preg16(0x0b0000e6) /* DSU Elapsed Time Register */
-#elif defined(CONFIG_VR4122)
- #define DSUCNTREG __preg16(0x0f0000e0) /* DSU Control Register */
- #define DSUSETREG __preg16(0x0f0000e2) /* DSU Dead Time Set Register */
- #define DSUCLRREG __preg16(0x0f0000e4) /* DSU Clear Register */
- #define DSUTIMREG __preg16(0x0f0000e6) /* DSU Elapsed Time Register */
-#else
+#ifndef CONFIG_CPU_VR41XX
#error "Can't use VR41xx watchdog on non-VR41xx processor."
#endif
@@ -79,13 +68,13 @@
add_timer(&timer);
/* Clear the counter */
- writew(0x01, DSUCLRREG);
+ writew(0x01, VR41XX_DSUCLRREG);
/* Set the overflow period (in seconds) */
- writew(nsecs, DSUSETREG);
+ writew(nsecs, VR41XX_DSUSETREG);
/* Turn on the watchdog */
- writew(0x01, DSUCNTREG);
+ writew(0x01, VR41XX_DSUCNTREG);
}
/**
@@ -98,10 +87,10 @@
del_timer(&timer);
/* Clear the counter */
- writew(0x01, DSUCLRREG);
+ writew(0x01, VR41XX_DSUCLRREG);
/* Turn off the watchdog */
- writew(0x00, DSUCNTREG);
+ writew(0x00, VR41XX_DSUCNTREG);
}
/**
@@ -115,7 +104,7 @@
{
if (time_before(jiffies, next_heartbeat)) {
/* Clear overflow counter */
- writew(0x01, DSUCLRREG);
+ writew(0x01, VR41XX_DSUCLRREG);
/* Update timer */
timer.expires = DSUTMRINTRVL;
@@ -307,7 +296,7 @@
return -EINVAL;
}
- if (!request_region((unsigned long)DSUCNTREG, 8, "vr41xxwdt")) {
+ if (!request_region((unsigned long)VR41XX_DSUCNTREG, 8, "vr41xxwdt")) {
printk(KERN_ERR "vr41xx wdt: Can't request DSU register region\n");
misc_deregister(&vr41xx_wdt_miscdev);
return -ENXIO;
@@ -315,7 +304,7 @@
if (register_reboot_notifier(&vr41xx_wdt_notifier)) {
printk(KERN_ERR "vr41xx wdt: Can't register reboot notifier\n");
- release_region((unsigned long)DSUCNTREG, 8);
+ release_region((unsigned long)VR41XX_DSUCNTREG, 8);
misc_deregister(&vr41xx_wdt_miscdev);
return -EINVAL;
}
@@ -337,7 +326,7 @@
static void __exit vr41xx_wdt_exit(void)
{
unregister_reboot_notifier(&vr41xx_wdt_notifier);
- release_region((unsigned long)DSUCNTREG, 8);
+ release_region((unsigned long)VR41XX_DSUCNTREG, 8);
misc_deregister(&vr41xx_wdt_miscdev);
}
|