diff options
Diffstat (limited to 'drivers/sbus')
-rw-r--r-- | drivers/sbus/char/cpwatchdog.c | 2 | ||||
-rw-r--r-- | drivers/sbus/char/display7seg.c | 2 | ||||
-rw-r--r-- | drivers/sbus/char/openprom.c | 3 | ||||
-rw-r--r-- | drivers/sbus/char/rtc.c | 22 |
4 files changed, 27 insertions, 2 deletions
diff --git a/drivers/sbus/char/cpwatchdog.c b/drivers/sbus/char/cpwatchdog.c index 071ae24be892..fd2cc7782f76 100644 --- a/drivers/sbus/char/cpwatchdog.c +++ b/drivers/sbus/char/cpwatchdog.c | |||
@@ -407,7 +407,7 @@ static long wd_compat_ioctl(struct file *file, unsigned int cmd, | |||
407 | case WIOCGSTAT: | 407 | case WIOCGSTAT: |
408 | lock_kernel(); | 408 | lock_kernel(); |
409 | rval = wd_ioctl(file->f_dentry->d_inode, file, cmd, arg); | 409 | rval = wd_ioctl(file->f_dentry->d_inode, file, cmd, arg); |
410 | lock_kernel(); | 410 | unlock_kernel(); |
411 | break; | 411 | break; |
412 | /* everything else is handled by the generic compat layer */ | 412 | /* everything else is handled by the generic compat layer */ |
413 | default: | 413 | default: |
diff --git a/drivers/sbus/char/display7seg.c b/drivers/sbus/char/display7seg.c index 39f54213a6d5..2c86a4b809cd 100644 --- a/drivers/sbus/char/display7seg.c +++ b/drivers/sbus/char/display7seg.c | |||
@@ -161,7 +161,7 @@ static long d7s_ioctl(struct file *file, unsigned int cmd, unsigned long arg) | |||
161 | writeb(regs, d7s_regs); | 161 | writeb(regs, d7s_regs); |
162 | break; | 162 | break; |
163 | }; | 163 | }; |
164 | lock_kernel(); | 164 | unlock_kernel(); |
165 | 165 | ||
166 | return error; | 166 | return error; |
167 | } | 167 | } |
diff --git a/drivers/sbus/char/openprom.c b/drivers/sbus/char/openprom.c index 5028ac214326..383a95f34a0d 100644 --- a/drivers/sbus/char/openprom.c +++ b/drivers/sbus/char/openprom.c | |||
@@ -596,6 +596,8 @@ static long openprom_compat_ioctl(struct file *file, unsigned int cmd, | |||
596 | lock_kernel(); | 596 | lock_kernel(); |
597 | break; | 597 | break; |
598 | } | 598 | } |
599 | |||
600 | return rval; | ||
599 | } | 601 | } |
600 | 602 | ||
601 | static int openprom_open(struct inode * inode, struct file * file) | 603 | static int openprom_open(struct inode * inode, struct file * file) |
@@ -623,6 +625,7 @@ static struct file_operations openprom_fops = { | |||
623 | .owner = THIS_MODULE, | 625 | .owner = THIS_MODULE, |
624 | .llseek = no_llseek, | 626 | .llseek = no_llseek, |
625 | .ioctl = openprom_ioctl, | 627 | .ioctl = openprom_ioctl, |
628 | .compat_ioctl = openprom_compat_ioctl, | ||
626 | .open = openprom_open, | 629 | .open = openprom_open, |
627 | .release = openprom_release, | 630 | .release = openprom_release, |
628 | }; | 631 | }; |
diff --git a/drivers/sbus/char/rtc.c b/drivers/sbus/char/rtc.c index 9b988baf0b51..5774bdd0e26f 100644 --- a/drivers/sbus/char/rtc.c +++ b/drivers/sbus/char/rtc.c | |||
@@ -210,6 +210,27 @@ static int rtc_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | |||
210 | } | 210 | } |
211 | } | 211 | } |
212 | 212 | ||
213 | static long rtc_compat_ioctl(struct file *file, unsigned int cmd, | ||
214 | unsigned long arg) | ||
215 | { | ||
216 | int rval = -ENOIOCTLCMD; | ||
217 | |||
218 | switch (cmd) { | ||
219 | /* | ||
220 | * These two are specific to this driver, the generic rtc ioctls | ||
221 | * are hanlded elsewhere. | ||
222 | */ | ||
223 | case RTCGET: | ||
224 | case RTCSET: | ||
225 | lock_kernel(); | ||
226 | rval = rtc_ioctl(file->f_dentry->d_inode, file, cmd, arg); | ||
227 | unlock_kernel(); | ||
228 | break; | ||
229 | } | ||
230 | |||
231 | return rval; | ||
232 | } | ||
233 | |||
213 | static int rtc_open(struct inode *inode, struct file *file) | 234 | static int rtc_open(struct inode *inode, struct file *file) |
214 | { | 235 | { |
215 | int ret; | 236 | int ret; |
@@ -237,6 +258,7 @@ static struct file_operations rtc_fops = { | |||
237 | .owner = THIS_MODULE, | 258 | .owner = THIS_MODULE, |
238 | .llseek = no_llseek, | 259 | .llseek = no_llseek, |
239 | .ioctl = rtc_ioctl, | 260 | .ioctl = rtc_ioctl, |
261 | .compat_ioctl = rtc_compat_ioctl, | ||
240 | .open = rtc_open, | 262 | .open = rtc_open, |
241 | .release = rtc_release, | 263 | .release = rtc_release, |
242 | }; | 264 | }; |