projects
/
powerpc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of /home/sam/kernel/linux-2.6/
[powerpc.git]
/
drivers
/
char
/
watchdog
/
booke_wdt.c
diff --git
a/drivers/char/watchdog/booke_wdt.c
b/drivers/char/watchdog/booke_wdt.c
index
abc30cc
..
537f5c6
100644
(file)
--- a/
drivers/char/watchdog/booke_wdt.c
+++ b/
drivers/char/watchdog/booke_wdt.c
@@
-4,7
+4,7
@@
* Watchdog timer for PowerPC Book-E systems
*
* Author: Matthew McClintock
* Watchdog timer for PowerPC Book-E systems
*
* Author: Matthew McClintock
- * Maintainer: Kumar Gala <
kumar.gala@freescale.com
>
+ * Maintainer: Kumar Gala <
galak@kernel.crashing.org
>
*
* Copyright 2005 Freescale Semiconductor Inc.
*
*
* Copyright 2005 Freescale Semiconductor Inc.
*
@@
-14,7
+14,6
@@
* option) any later version.
*/
* option) any later version.
*/
-#include <linux/config.h>
#include <linux/module.h>
#include <linux/fs.h>
#include <linux/miscdevice.h>
#include <linux/module.h>
#include <linux/fs.h>
#include <linux/miscdevice.h>
@@
-72,7
+71,7
@@
static __inline__ void booke_wdt_ping(void)
/*
* booke_wdt_write:
*/
/*
* booke_wdt_write:
*/
-static ssize_t booke_wdt_write (struct file *file, const char *buf,
+static ssize_t booke_wdt_write (struct file *file, const char
__user
*buf,
size_t count, loff_t *ppos)
{
booke_wdt_ping();
size_t count, loff_t *ppos)
{
booke_wdt_ping();
@@
-92,14
+91,15
@@
static int booke_wdt_ioctl (struct inode *inode, struct file *file,
unsigned int cmd, unsigned long arg)
{
u32 tmp = 0;
unsigned int cmd, unsigned long arg)
{
u32 tmp = 0;
+ u32 __user *p = (u32 __user *)arg;
switch (cmd) {
case WDIOC_GETSUPPORT:
switch (cmd) {
case WDIOC_GETSUPPORT:
- if (copy_to_user ((struct watchdog_info *) arg, &ident,
+ if (copy_to_user ((struct watchdog_info
__user
*) arg, &ident,
sizeof(struct watchdog_info)))
return -EFAULT;
case WDIOC_GETSTATUS:
sizeof(struct watchdog_info)))
return -EFAULT;
case WDIOC_GETSTATUS:
- return put_user(ident.options,
(u32 *) arg
);
+ return put_user(ident.options,
p
);
case WDIOC_GETBOOTSTATUS:
/* XXX: something is clearing TSR */
tmp = mfspr(SPRN_TSR) & TSR_WRS(3);
case WDIOC_GETBOOTSTATUS:
/* XXX: something is clearing TSR */
tmp = mfspr(SPRN_TSR) & TSR_WRS(3);
@@
-109,14
+109,14
@@
static int booke_wdt_ioctl (struct inode *inode, struct file *file,
booke_wdt_ping();
return 0;
case WDIOC_SETTIMEOUT:
booke_wdt_ping();
return 0;
case WDIOC_SETTIMEOUT:
- if (get_user(booke_wdt_period,
(u32 *) arg
))
+ if (get_user(booke_wdt_period,
p
))
return -EFAULT;
mtspr(SPRN_TCR, (mfspr(SPRN_TCR)&~WDTP(0))|WDTP(booke_wdt_period));
return 0;
case WDIOC_GETTIMEOUT:
return -EFAULT;
mtspr(SPRN_TCR, (mfspr(SPRN_TCR)&~WDTP(0))|WDTP(booke_wdt_period));
return 0;
case WDIOC_GETTIMEOUT:
- return put_user(booke_wdt_period,
(u32 *) arg
);
+ return put_user(booke_wdt_period,
p
);
case WDIOC_SETOPTIONS:
case WDIOC_SETOPTIONS:
- if (get_user(tmp,
(u32 *) arg
))
+ if (get_user(tmp,
p
))
return -EINVAL;
if (tmp == WDIOS_ENABLECARD) {
booke_wdt_ping();
return -EINVAL;
if (tmp == WDIOS_ENABLECARD) {
booke_wdt_ping();
@@
-172,7
+172,7
@@
static int __init booke_wdt_init(void)
int ret = 0;
printk (KERN_INFO "PowerPC Book-E Watchdog Timer Loaded\n");
int ret = 0;
printk (KERN_INFO "PowerPC Book-E Watchdog Timer Loaded\n");
- ident.firmware_version = c
pu_specs[0].
pvr_value;
+ ident.firmware_version = c
ur_cpu_spec->
pvr_value;
ret = misc_register(&booke_wdt_miscdev);
if (ret) {
ret = misc_register(&booke_wdt_miscdev);
if (ret) {