summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/serial.c
diff options
context:
space:
mode:
authorGovindraj.R <govindraj.raja@ti.com>2010-09-27 16:50:41 +0200
committerKevin Hilman <khilman@deeprootsystems.com>2010-09-29 21:43:02 +0200
commit52663aea10c3ce175b636ff3ed5a6d78fdbeec02 (patch)
treee7187e9bc7936001049fa9df447d6bdd9c758913 /arch/arm/mach-omap2/serial.c
parentOMAP3: PM: Add prepare idle and resume idle call for uart4 (diff)
downloadlinux-52663aea10c3ce175b636ff3ed5a6d78fdbeec02.tar.xz
linux-52663aea10c3ce175b636ff3ed5a6d78fdbeec02.zip
OMAP3: serial: Fix uart4 handling for 3630
This patch makes the following: - Adds missing wakeup padding register handling. - Fixes a hardcode to use PER module ONLY on UART3. Signed-off-by: Sergio Aguirre <saaguirre@ti.com> Signed-off-by: Govindraj.R <govindraj.raja@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-omap2/serial.c')
-rw-r--r--arch/arm/mach-omap2/serial.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/serial.c b/arch/arm/mach-omap2/serial.c
index 72b5c9896390..0bcc9df0c034 100644
--- a/arch/arm/mach-omap2/serial.c
+++ b/arch/arm/mach-omap2/serial.c
@@ -487,7 +487,7 @@ static void omap_uart_idle_init(struct omap_uart_state *uart)
omap_uart_smart_idle_enable(uart, 0);
if (cpu_is_omap34xx()) {
- u32 mod = (uart->num == 2) ? OMAP3430_PER_MOD : CORE_MOD;
+ u32 mod = (uart->num > 1) ? OMAP3430_PER_MOD : CORE_MOD;
u32 wk_mask = 0;
u32 padconf = 0;
@@ -506,6 +506,10 @@ static void omap_uart_idle_init(struct omap_uart_state *uart)
wk_mask = OMAP3430_ST_UART3_MASK;
padconf = 0x19e;
break;
+ case 3:
+ wk_mask = OMAP3630_ST_UART4_MASK;
+ padconf = 0x0d2;
+ break;
}
uart->wk_mask = wk_mask;
uart->padconf = padconf;