Commit 0e0aff21 authored by Jesper Nilsson's avatar Jesper Nilsson

CRIS: v10: remove all BKL usage

We don't need to take the BKL here.
Also fixes compile error after last commit (smp_lock.h was not included)
Signed-off-by: default avatarJesper Nilsson <jesper.nilsson@axis.com>
parent 60362158
...@@ -577,8 +577,7 @@ i2c_release(struct inode *inode, struct file *filp) ...@@ -577,8 +577,7 @@ i2c_release(struct inode *inode, struct file *filp)
/* Main device API. ioctl's to write or read to/from i2c registers. /* Main device API. ioctl's to write or read to/from i2c registers.
*/ */
static int static long i2c_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
i2c_ioctl_unlocked(struct file *file, unsigned int cmd, unsigned long arg)
{ {
if(_IOC_TYPE(cmd) != ETRAXI2C_IOCTYPE) { if(_IOC_TYPE(cmd) != ETRAXI2C_IOCTYPE) {
return -EINVAL; return -EINVAL;
...@@ -587,7 +586,7 @@ i2c_ioctl_unlocked(struct file *file, unsigned int cmd, unsigned long arg) ...@@ -587,7 +586,7 @@ i2c_ioctl_unlocked(struct file *file, unsigned int cmd, unsigned long arg)
switch (_IOC_NR(cmd)) { switch (_IOC_NR(cmd)) {
case I2C_WRITEREG: case I2C_WRITEREG:
/* write to an i2c slave */ /* write to an i2c slave */
D(printk("i2cw %d %d %d\n", D(printk(KERN_DEBUG "i2cw %d %d %d\n",
I2C_ARGSLAVE(arg), I2C_ARGSLAVE(arg),
I2C_ARGREG(arg), I2C_ARGREG(arg),
I2C_ARGVALUE(arg))); I2C_ARGVALUE(arg)));
...@@ -599,32 +598,20 @@ i2c_ioctl_unlocked(struct file *file, unsigned int cmd, unsigned long arg) ...@@ -599,32 +598,20 @@ i2c_ioctl_unlocked(struct file *file, unsigned int cmd, unsigned long arg)
{ {
unsigned char val; unsigned char val;
/* read from an i2c slave */ /* read from an i2c slave */
D(printk("i2cr %d %d ", D(printk(KERN_DEBUG "i2cr %d %d ",
I2C_ARGSLAVE(arg), I2C_ARGSLAVE(arg),
I2C_ARGREG(arg))); I2C_ARGREG(arg)));
val = i2c_readreg(I2C_ARGSLAVE(arg), I2C_ARGREG(arg)); val = i2c_readreg(I2C_ARGSLAVE(arg), I2C_ARGREG(arg));
D(printk("= %d\n", val)); D(printk(KERN_DEBUG "= %d\n", val));
return val; return val;
} }
default: default:
return -EINVAL; return -EINVAL;
} }
return 0; return 0;
} }
static long i2c_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
{
long ret;
lock_kernel();
ret = i2c_ioctl_unlocked(file, cmd, arg);
unlock_kernel();
return ret;
}
static const struct file_operations i2c_fops = { static const struct file_operations i2c_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.unlocked_ioctl = i2c_ioctl, .unlocked_ioctl = i2c_ioctl,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment