mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 17:08:10 +00:00
[media] lirc: LIRC_{G,S}ET_SEND_MODE fail if device cannot transmit
These ioctls should not succeed if the device cannot send. Also make it clear that these ioctls should return the lirc mode, although the actual value does not change. Signed-off-by: Sean Young <sean@mess.org> Reviewed-by: Andi Shyti <andi.shyti@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
bd291208d7
commit
07e9293c18
1 changed files with 8 additions and 2 deletions
|
@ -204,11 +204,17 @@ static long ir_lirc_ioctl(struct file *filep, unsigned int cmd,
|
|||
|
||||
/* legacy support */
|
||||
case LIRC_GET_SEND_MODE:
|
||||
val = LIRC_CAN_SEND_PULSE & LIRC_CAN_SEND_MASK;
|
||||
if (!dev->tx_ir)
|
||||
return -ENOTTY;
|
||||
|
||||
val = LIRC_MODE_PULSE;
|
||||
break;
|
||||
|
||||
case LIRC_SET_SEND_MODE:
|
||||
if (val != (LIRC_MODE_PULSE & LIRC_CAN_SEND_MASK))
|
||||
if (!dev->tx_ir)
|
||||
return -ENOTTY;
|
||||
|
||||
if (val != LIRC_MODE_PULSE)
|
||||
return -EINVAL;
|
||||
return 0;
|
||||
|
||||
|
|
Loading…
Reference in a new issue