]> err.no Git - linux-2.6/commitdiff
[WATCHDOG 20/57] booke watchdog: clean up and unlocked_ioctl
authorAlan Cox <alan@redhat.com>
Mon, 19 May 2008 13:06:36 +0000 (14:06 +0100)
committerWim Van Sebroeck <wim@iguana.be>
Fri, 13 Jun 2008 18:49:29 +0000 (18:49 +0000)
Review and switch to unlocked_ioctl

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/watchdog/booke_wdt.c

index c1ba0db485016c04595fd4a872fd5b0363604291..4c423d531a891dc223235f7134072e7472b34199 100644 (file)
@@ -18,9 +18,9 @@
 #include <linux/miscdevice.h>
 #include <linux/notifier.h>
 #include <linux/watchdog.h>
+#include <linux/uaccess.h>
 
 #include <asm/reg_booke.h>
-#include <asm/uaccess.h>
 #include <asm/system.h>
 
 /* If the kernel parameter wdt=1, the watchdog will be enabled at boot.
@@ -32,7 +32,7 @@
  */
 
 #ifdef CONFIG_FSL_BOOKE
-#define WDT_PERIOD_DEFAULT 63  /* Ex. wdt_period=28 bus=333Mhz , reset=~40sec */
+#define WDT_PERIOD_DEFAULT 63  /* Ex. wdt_period=28 bus=333Mhz,reset=~40sec */
 #else
 #define WDT_PERIOD_DEFAULT 3   /* Refer to the PPC40x and PPC4xx manuals */
 #endif                         /* for timing information */
@@ -82,16 +82,15 @@ static struct watchdog_info ident = {
        .identity = "PowerPC Book-E Watchdog",
 };
 
-static int booke_wdt_ioctl(struct inode *inode, struct file *file,
-                           unsigned int cmd, unsigned long arg)
+static long booke_wdt_ioctl(struct file *file,
+                               unsigned int cmd, unsigned long arg)
 {
        u32 tmp = 0;
        u32 __user *p = (u32 __user *)arg;
 
        switch (cmd) {
        case WDIOC_GETSUPPORT:
-               if (copy_to_user((struct watchdog_info __user *)arg, &ident,
-                               sizeof(struct watchdog_info)))
+               if (copy_to_user(arg, &ident, sizeof(struct watchdog_info)))
                        return -EFAULT;
        case WDIOC_GETSTATUS:
                return put_user(ident.options, p);
@@ -106,7 +105,8 @@ static int booke_wdt_ioctl(struct inode *inode, struct file *file,
        case WDIOC_SETTIMEOUT:
                if (get_user(booke_wdt_period, p))
                        return -EFAULT;
-               mtspr(SPRN_TCR, (mfspr(SPRN_TCR)&~WDTP(0))|WDTP(booke_wdt_period));
+               mtspr(SPRN_TCR, (mfspr(SPRN_TCR) & ~WDTP(0)) |
+                                               WDTP(booke_wdt_period));
                return 0;
        case WDIOC_GETTIMEOUT:
                return put_user(booke_wdt_period, p);
@@ -132,8 +132,9 @@ static int booke_wdt_open(struct inode *inode, struct file *file)
        if (booke_wdt_enabled == 0) {
                booke_wdt_enabled = 1;
                on_each_cpu(__booke_wdt_enable, NULL, 0, 0);
-               printk(KERN_INFO "PowerPC Book-E Watchdog Timer Enabled "
-                               "(wdt_period=%d)\n", booke_wdt_period);
+               printk(KERN_INFO
+                     "PowerPC Book-E Watchdog Timer Enabled (wdt_period=%d)\n",
+                               booke_wdt_period);
        }
        spin_unlock(&booke_wdt_lock);
 
@@ -144,7 +145,7 @@ static const struct file_operations booke_wdt_fops = {
        .owner = THIS_MODULE,
        .llseek = no_llseek,
        .write = booke_wdt_write,
-       .ioctl = booke_wdt_ioctl,
+       .unlocked_ioctl = booke_wdt_ioctl,
        .open = booke_wdt_open,
 };
 
@@ -175,8 +176,9 @@ static int __init booke_wdt_init(void)
 
        spin_lock(&booke_wdt_lock);
        if (booke_wdt_enabled == 1) {
-               printk(KERN_INFO "PowerPC Book-E Watchdog Timer Enabled "
-                               "(wdt_period=%d)\n", booke_wdt_period);
+               printk(KERN_INFO
+                     "PowerPC Book-E Watchdog Timer Enabled (wdt_period=%d)\n",
+                               booke_wdt_period);
                on_each_cpu(__booke_wdt_enable, NULL, 0, 0);
        }
        spin_unlock(&booke_wdt_lock);