aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/sbus/char/uctrl.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/sbus/char/uctrl.c')
-rw-r--r--drivers/sbus/char/uctrl.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/sbus/char/uctrl.c b/drivers/sbus/char/uctrl.c
index 5f253665a1da..079da4cb45a5 100644
--- a/drivers/sbus/char/uctrl.c
+++ b/drivers/sbus/char/uctrl.c
@@ -9,7 +9,7 @@
9#include <linux/delay.h> 9#include <linux/delay.h>
10#include <linux/interrupt.h> 10#include <linux/interrupt.h>
11#include <linux/slab.h> 11#include <linux/slab.h>
12#include <linux/smp_lock.h> 12#include <linux/mutex.h>
13#include <linux/ioport.h> 13#include <linux/ioport.h>
14#include <linux/init.h> 14#include <linux/init.h>
15#include <linux/miscdevice.h> 15#include <linux/miscdevice.h>
@@ -72,6 +72,7 @@ struct ts102_regs {
72#define UCTRL_STAT_RXNE_STA 0x04 /* receive FIFO not empty status */ 72#define UCTRL_STAT_RXNE_STA 0x04 /* receive FIFO not empty status */
73#define UCTRL_STAT_RXO_STA 0x08 /* receive FIFO overflow status */ 73#define UCTRL_STAT_RXO_STA 0x08 /* receive FIFO overflow status */
74 74
75static DEFINE_MUTEX(uctrl_mutex);
75static const char *uctrl_extstatus[16] = { 76static const char *uctrl_extstatus[16] = {
76 "main power available", 77 "main power available",
77 "internal battery attached", 78 "internal battery attached",
@@ -210,10 +211,10 @@ uctrl_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
210static int 211static int
211uctrl_open(struct inode *inode, struct file *file) 212uctrl_open(struct inode *inode, struct file *file)
212{ 213{
213 lock_kernel(); 214 mutex_lock(&uctrl_mutex);
214 uctrl_get_event_status(global_driver); 215 uctrl_get_event_status(global_driver);
215 uctrl_get_external_status(global_driver); 216 uctrl_get_external_status(global_driver);
216 unlock_kernel(); 217 mutex_unlock(&uctrl_mutex);
217 return 0; 218 return 0;
218} 219}
219 220