diff options
author | Rickard Andersson <rickard.andersson@stericsson.com> | 2011-05-02 16:18:19 +0200 |
---|---|---|
committer | Ulf Hansson <ulf.hansson@stericsson.com> | 2011-09-19 15:15:16 +0200 |
commit | 58ab2ff2e21ef8cf0bd5b4a49768ae79a8062903 (patch) | |
tree | 26ca3d6464b586be5b38f9c2dc718c298b40b924 /arch/arm/mach-ux500/board-mop500-pins.c | |
parent | c1d6c285d8686515c1217cebe75f38ecfbca4e73 (diff) |
arm: ux500: Configure modem STM pins correctly in sleep
Modem STM pins was not correctly configured for the
sleep states ApSleep and ApDeepSleep. This is now fixed
both for suspend and cpuidle.
ST Ericsson ID: 323509
ST Ericsson FOSS-OUT ID: trivial
ST Ericsson Linux next: -
Change-Id: I48e8bd3f00e2a6320d8d41a61acee271d4c81d91
Signed-off-by: Rickard Andersson <rickard.andersson@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/22434
Reviewed-by: QATEST
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Diffstat (limited to 'arch/arm/mach-ux500/board-mop500-pins.c')
-rw-r--r-- | arch/arm/mach-ux500/board-mop500-pins.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/arm/mach-ux500/board-mop500-pins.c b/arch/arm/mach-ux500/board-mop500-pins.c index e96ff362969..016fbdd2159 100644 --- a/arch/arm/mach-ux500/board-mop500-pins.c +++ b/arch/arm/mach-ux500/board-mop500-pins.c @@ -457,7 +457,6 @@ static void mop500_pins_suspend_force(void) writel(0 , bankaddr + NMK_GPIO_SLPC); /* Bank2 */ - bankaddr = IO_ADDRESS(U8500_GPIOBANK2_BASE); w_imsc = readl(bankaddr + NMK_GPIO_RWIMSC) | @@ -475,7 +474,12 @@ static void mop500_pins_suspend_force(void) writel(0x803C2830 & ~mask, bankaddr + NMK_GPIO_DIRC); writel(0x3D7C0 & ~w_imsc & ~mask, bankaddr + NMK_GPIO_DATC); writel(0xFFFFFFFF & ~w_imsc & ~imsc & ~mask, bankaddr + NMK_GPIO_PDIS); - writel(0 , bankaddr + NMK_GPIO_SLPC); + /* + * No need to set SLPC (SLPM) register. This can break modem STM + * settings on pins (70-76) because modem is special and needs to + * have its mux connected even in suspend because modem could still + * be on and might send interesting STM debugging data. + */ /* Bank3 */ bankaddr = IO_ADDRESS(U8500_GPIOBANK3_BASE); @@ -613,11 +617,7 @@ static void mop500_pins_suspend_force_mux(void) writel(0x1 , bankaddr + NMK_GPIO_AFSLA); writel(0x1 , bankaddr + NMK_GPIO_AFSLB); - /* Bank2 */ - bankaddr = IO_ADDRESS(U8500_GPIOBANK2_BASE); - - writel(0 , bankaddr + NMK_GPIO_AFSLA); - writel(0 , bankaddr + NMK_GPIO_AFSLB); + /* Bank2 (Nothing needs to be done) */ /* Bank3 */ bankaddr = IO_ADDRESS(U8500_GPIOBANK3_BASE); |