@@ -269,15 +269,10 @@ static int lirc_allocate_driver(struct lirc_driver *d)
dev_err(d->dev, "add_to_buf not set\n");
return -EBADRQC;
}
- } else if (!(d->fops && d->fops->read) && !d->rbuf) {
- dev_err(d->dev, "fops->read and rbuf are NULL!\n");
+ } else if (!d->rbuf && !(d->fops && d->fops->read &&
+ d->fops->poll && d->fops->unlocked_ioctl)) {
+ dev_err(d->dev, "undefined read, poll, ioctl\n");
return -EBADRQC;
- } else if (!d->rbuf) {
- if (!(d->fops && d->fops->read && d->fops->poll &&
- d->fops->unlocked_ioctl)) {
- dev_err(d->dev, "undefined read, poll, ioctl\n");
- return -EBADRQC;
- }
}
mutex_lock(&lirc_dev_lock);
The three if statements check the same thing, merge them in only one statement. Signed-off-by: Andi Shyti <andi.shyti@samsung.com> --- drivers/media/rc/lirc_dev.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-)