diff options
author | Claudio Scordino <claudio@evidence.eu.com> | 2010-05-31 04:19:09 -0400 |
---|---|---|
committer | Jesper Nilsson <jesper.nilsson@axis.com> | 2010-08-09 08:10:32 -0400 |
commit | f1d23ed8218ca5afaf178a6495253dbb7fc98f57 (patch) | |
tree | e80045aba944222321ea47ba1dd8a5a2fc741348 | |
parent | 9fe6206f400646a2322096b56c59891d530e8d51 (diff) |
CRIS: ioctl for getting RS485 information
Add ioctl to CRIS serial driver to get RS485 data from user-space.
Signed-off-by: Claudio Scordino <claudio@evidence.eu.com>
Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
-rw-r--r-- | arch/cris/include/asm/ioctls.h | 1 | ||||
-rw-r--r-- | drivers/serial/crisv10.c | 11 |
2 files changed, 12 insertions, 0 deletions
diff --git a/arch/cris/include/asm/ioctls.h b/arch/cris/include/asm/ioctls.h index 35bbc181598a..076c07824eb6 100644 --- a/arch/cris/include/asm/ioctls.h +++ b/arch/cris/include/asm/ioctls.h | |||
@@ -77,6 +77,7 @@ | |||
77 | #define TIOCSERSETRS485 0x5461 /* enable rs-485 (deprecated) */ | 77 | #define TIOCSERSETRS485 0x5461 /* enable rs-485 (deprecated) */ |
78 | #define TIOCSERWRRS485 0x5462 /* write rs-485 */ | 78 | #define TIOCSERWRRS485 0x5462 /* write rs-485 */ |
79 | #define TIOCSRS485 0x5463 /* enable rs-485 */ | 79 | #define TIOCSRS485 0x5463 /* enable rs-485 */ |
80 | #define TIOCGRS485 0x542E /* get rs-485 */ | ||
80 | 81 | ||
81 | /* Used for packet mode */ | 82 | /* Used for packet mode */ |
82 | #define TIOCPKT_DATA 0 | 83 | #define TIOCPKT_DATA 0 |
diff --git a/drivers/serial/crisv10.c b/drivers/serial/crisv10.c index 31f172397af3..30626440a062 100644 --- a/drivers/serial/crisv10.c +++ b/drivers/serial/crisv10.c | |||
@@ -3724,6 +3724,17 @@ rs_ioctl(struct tty_struct *tty, struct file * file, | |||
3724 | return e100_enable_rs485(tty, &rs485data); | 3724 | return e100_enable_rs485(tty, &rs485data); |
3725 | } | 3725 | } |
3726 | 3726 | ||
3727 | case TIOCGRS485: | ||
3728 | { | ||
3729 | struct serial_rs485 *rs485data = | ||
3730 | &(((struct e100_serial *)tty->driver_data)->rs485); | ||
3731 | /* This is the ioctl to get RS485 data from user-space */ | ||
3732 | if (copy_to_user((struct serial_rs485 *) arg, | ||
3733 | rs485data, | ||
3734 | sizeof(serial_rs485))) | ||
3735 | return -EFAULT; | ||
3736 | break; | ||
3737 | } | ||
3727 | 3738 | ||
3728 | case TIOCSERWRRS485: | 3739 | case TIOCSERWRRS485: |
3729 | { | 3740 | { |