aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin
diff options
context:
space:
mode:
authorSonic Zhang <sonic.zhang@analog.com>2009-09-09 06:46:19 -0400
committerMike Frysinger <vapier@gentoo.org>2011-01-10 07:18:11 -0500
commit57afb399350b45c0067f4979ce9f0c754239b048 (patch)
tree8dc43f8df53b016621a6bc9f43b5761858dfe6d0 /arch/blackfin
parent94a038c2e6228727ae0549af75e97b9b634cd468 (diff)
serial: bfin_5xx: move resources into board files
Rather than maintain Kconfig entries where people have to enter raw numbers and hardcode lists of addresses/pins in the driver itself, push it all to platform resources. This lets us simplify the driver, the Kconfig, and gives board porters greater flexibility. In the process, we need to also start supporting the early platform interface. Not a big deal, but it causes the patch to be bigger than a simple resource relocation. All the Blackfin boards already have their resources updated and in place for this change. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'arch/blackfin')
-rw-r--r--arch/blackfin/include/asm/bfin_serial.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/blackfin/include/asm/bfin_serial.h b/arch/blackfin/include/asm/bfin_serial.h
index e9510eab5e22..1ff9f1468c02 100644
--- a/arch/blackfin/include/asm/bfin_serial.h
+++ b/arch/blackfin/include/asm/bfin_serial.h
@@ -13,6 +13,17 @@
13#include <mach/anomaly.h> 13#include <mach/anomaly.h>
14#include <mach/bfin_serial.h> 14#include <mach/bfin_serial.h>
15 15
16#if defined(CONFIG_BFIN_UART0_CTSRTS) || \
17 defined(CONFIG_BFIN_UART1_CTSRTS) || \
18 defined(CONFIG_BFIN_UART2_CTSRTS) || \
19 defined(CONFIG_BFIN_UART3_CTSRTS)
20# ifdef BFIN_UART_BF54X_STYLE
21# define CONFIG_SERIAL_BFIN_HARD_CTSRTS
22# else
23# define CONFIG_SERIAL_BFIN_CTSRTS
24# endif
25#endif
26
16struct circ_buf; 27struct circ_buf;
17struct timer_list; 28struct timer_list;
18struct work_struct; 29struct work_struct;
@@ -203,6 +214,7 @@ struct bfin_uart_regs {
203#define UART_PUT_LSR(p, v) bfin_write16(port_membase(p) + OFFSET_LSR, v) 214#define UART_PUT_LSR(p, v) bfin_write16(port_membase(p) + OFFSET_LSR, v)
204 215
205/* This handles hard CTS/RTS */ 216/* This handles hard CTS/RTS */
217#define BFIN_UART_CTSRTS_HARD
206#define UART_CLEAR_SCTS(p) bfin_write16((port_membase(p) + OFFSET_MSR), SCTS) 218#define UART_CLEAR_SCTS(p) bfin_write16((port_membase(p) + OFFSET_MSR), SCTS)
207#define UART_GET_CTS(x) (UART_GET_MSR(x) & CTS) 219#define UART_GET_CTS(x) (UART_GET_MSR(x) & CTS)
208#define UART_DISABLE_RTS(x) UART_PUT_MCR(x, UART_GET_MCR(x) & ~(ARTS | MRTS)) 220#define UART_DISABLE_RTS(x) UART_PUT_MCR(x, UART_GET_MCR(x) & ~(ARTS | MRTS))