aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/pm34xx.c
diff options
context:
space:
mode:
authorGovindraj.R <govindraj.raja@ti.com>2010-09-27 10:50:25 -0400
committerKevin Hilman <khilman@deeprootsystems.com>2010-09-29 15:43:00 -0400
commite586368904b737b4888927e4c869a25966e5cd05 (patch)
treeaa432e91badece35f181bbcbfd93e89f58ede87f /arch/arm/mach-omap2/pm34xx.c
parenta0edcdbe5295b7912e92ff88dd8f46646710735b (diff)
OMAP3: PRCM: Consider UART4 for 3630 chip in prcm_setup_regs
To standarize among other uarts (1 to 3), we shall now: - Enable uart4 autodile bit. - Enable uart4 wakeup in PER. - Allow uart4 to wakeup the MPU. Signed-off-by: Sergio Aguirre <saaguirre@ti.com> Signed-off-by: Govindraj.R <govindraj.raja@ti.com> Acked-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-omap2/pm34xx.c')
-rw-r--r--arch/arm/mach-omap2/pm34xx.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
index d2b940c7215d..043faaa3f3dc 100644
--- a/arch/arm/mach-omap2/pm34xx.c
+++ b/arch/arm/mach-omap2/pm34xx.c
@@ -676,6 +676,14 @@ static void __init omap3_d2d_idle(void)
676 676
677static void __init prcm_setup_regs(void) 677static void __init prcm_setup_regs(void)
678{ 678{
679 u32 omap3630_auto_uart4_mask = cpu_is_omap3630() ?
680 OMAP3630_AUTO_UART4_MASK : 0;
681 u32 omap3630_en_uart4_mask = cpu_is_omap3630() ?
682 OMAP3630_EN_UART4_MASK : 0;
683 u32 omap3630_grpsel_uart4_mask = cpu_is_omap3630() ?
684 OMAP3630_GRPSEL_UART4_MASK : 0;
685
686
679 /* XXX Reset all wkdeps. This should be done when initializing 687 /* XXX Reset all wkdeps. This should be done when initializing
680 * powerdomains */ 688 * powerdomains */
681 prm_write_mod_reg(0, OMAP3430_IVA2_MOD, PM_WKDEP); 689 prm_write_mod_reg(0, OMAP3430_IVA2_MOD, PM_WKDEP);
@@ -762,6 +770,7 @@ static void __init prcm_setup_regs(void)
762 CM_AUTOIDLE); 770 CM_AUTOIDLE);
763 771
764 cm_write_mod_reg( 772 cm_write_mod_reg(
773 omap3630_auto_uart4_mask |
765 OMAP3430_AUTO_GPIO6_MASK | 774 OMAP3430_AUTO_GPIO6_MASK |
766 OMAP3430_AUTO_GPIO5_MASK | 775 OMAP3430_AUTO_GPIO5_MASK |
767 OMAP3430_AUTO_GPIO4_MASK | 776 OMAP3430_AUTO_GPIO4_MASK |
@@ -838,14 +847,16 @@ static void __init prcm_setup_regs(void)
838 OMAP3430_DSS_MOD, PM_WKEN); 847 OMAP3430_DSS_MOD, PM_WKEN);
839 848
840 /* Enable wakeups in PER */ 849 /* Enable wakeups in PER */
841 prm_write_mod_reg(OMAP3430_EN_GPIO2_MASK | OMAP3430_EN_GPIO3_MASK | 850 prm_write_mod_reg(omap3630_en_uart4_mask |
851 OMAP3430_EN_GPIO2_MASK | OMAP3430_EN_GPIO3_MASK |
842 OMAP3430_EN_GPIO4_MASK | OMAP3430_EN_GPIO5_MASK | 852 OMAP3430_EN_GPIO4_MASK | OMAP3430_EN_GPIO5_MASK |
843 OMAP3430_EN_GPIO6_MASK | OMAP3430_EN_UART3_MASK | 853 OMAP3430_EN_GPIO6_MASK | OMAP3430_EN_UART3_MASK |
844 OMAP3430_EN_MCBSP2_MASK | OMAP3430_EN_MCBSP3_MASK | 854 OMAP3430_EN_MCBSP2_MASK | OMAP3430_EN_MCBSP3_MASK |
845 OMAP3430_EN_MCBSP4_MASK, 855 OMAP3430_EN_MCBSP4_MASK,
846 OMAP3430_PER_MOD, PM_WKEN); 856 OMAP3430_PER_MOD, PM_WKEN);
847 /* and allow them to wake up MPU */ 857 /* and allow them to wake up MPU */
848 prm_write_mod_reg(OMAP3430_GRPSEL_GPIO2_MASK | 858 prm_write_mod_reg(omap3630_grpsel_uart4_mask |
859 OMAP3430_GRPSEL_GPIO2_MASK |
849 OMAP3430_GRPSEL_GPIO3_MASK | 860 OMAP3430_GRPSEL_GPIO3_MASK |
850 OMAP3430_GRPSEL_GPIO4_MASK | 861 OMAP3430_GRPSEL_GPIO4_MASK |
851 OMAP3430_GRPSEL_GPIO5_MASK | 862 OMAP3430_GRPSEL_GPIO5_MASK |