diff options
author | Claudio Scordino <claudio@evidence.eu.com> | 2010-05-03 08:31:28 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-05-04 11:59:11 -0400 |
commit | e8faff7330a3501eafc9bfe5f4f15af444be29f5 (patch) | |
tree | f0348e3831698baed6cc122972b8239bd155ecdf /arch/arm | |
parent | aec9562f3db8ece218125042e0b2b7ac5b7091e7 (diff) |
ARM: 6092/1: atmel_serial: support for RS485 communications
Final version of the patch that adds support for RS485 communications to the atmel_serial driver.
The patch has been already sent and discussed on both linux-kernel and linux-arm-kernel mailing lists several times.
Many people collaborated to improve and test the code:
Tested-by: Sebastian Heutling <Sebastian.Heutling@who-ing.de>
Tested-by: Bernhard Roth <br@pwrnet.de>
Reviewed-by: Ryan Mallon <ryan@bluewatersys.com>
Signed-off-by: Claudio Scordino <claudio@evidence.eu.com>
Signed-off-by: Michael Trimarchi <michael@evidence.eu.com>
Signed-off-by: Rick Bronson <rick@efn.org>
Signed-off-by: Sebastian Heutling <Sebastian.Heutling@who-ing.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/include/asm/ioctls.h | 3 | ||||
-rw-r--r-- | arch/arm/mach-at91/include/mach/board.h | 8 |
2 files changed, 8 insertions, 3 deletions
diff --git a/arch/arm/include/asm/ioctls.h b/arch/arm/include/asm/ioctls.h index a91d8a1523cf..7f0b6d13296a 100644 --- a/arch/arm/include/asm/ioctls.h +++ b/arch/arm/include/asm/ioctls.h | |||
@@ -53,6 +53,9 @@ | |||
53 | #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ | 53 | #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ |
54 | #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ | 54 | #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ |
55 | 55 | ||
56 | #define TIOCGRS485 0x542E | ||
57 | #define TIOCSRS485 0x542F | ||
58 | |||
56 | #define FIONCLEX 0x5450 /* these numbers need to be adjusted. */ | 59 | #define FIONCLEX 0x5450 /* these numbers need to be adjusted. */ |
57 | #define FIOCLEX 0x5451 | 60 | #define FIOCLEX 0x5451 |
58 | #define FIOASYNC 0x5452 | 61 | #define FIOASYNC 0x5452 |
diff --git a/arch/arm/mach-at91/include/mach/board.h b/arch/arm/mach-at91/include/mach/board.h index ceaec6c16eb2..df2ed848c9f8 100644 --- a/arch/arm/mach-at91/include/mach/board.h +++ b/arch/arm/mach-at91/include/mach/board.h | |||
@@ -39,6 +39,7 @@ | |||
39 | #include <linux/usb/atmel_usba_udc.h> | 39 | #include <linux/usb/atmel_usba_udc.h> |
40 | #include <linux/atmel-mci.h> | 40 | #include <linux/atmel-mci.h> |
41 | #include <sound/atmel-ac97c.h> | 41 | #include <sound/atmel-ac97c.h> |
42 | #include <linux/serial.h> | ||
42 | 43 | ||
43 | /* USB Device */ | 44 | /* USB Device */ |
44 | struct at91_udc_data { | 45 | struct at91_udc_data { |
@@ -143,9 +144,10 @@ extern struct platform_device *atmel_default_console_device; | |||
143 | extern void __init __deprecated at91_init_serial(struct at91_uart_config *config); | 144 | extern void __init __deprecated at91_init_serial(struct at91_uart_config *config); |
144 | 145 | ||
145 | struct atmel_uart_data { | 146 | struct atmel_uart_data { |
146 | short use_dma_tx; /* use transmit DMA? */ | 147 | short use_dma_tx; /* use transmit DMA? */ |
147 | short use_dma_rx; /* use receive DMA? */ | 148 | short use_dma_rx; /* use receive DMA? */ |
148 | void __iomem *regs; /* virtual base address, if any */ | 149 | void __iomem *regs; /* virt. base address, if any */ |
150 | struct serial_rs485 rs485; /* rs485 settings */ | ||
149 | }; | 151 | }; |
150 | extern void __init at91_add_device_serial(void); | 152 | extern void __init at91_add_device_serial(void); |
151 | 153 | ||