Re: CONFIG_CPU_IDLE broken for N900

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ameya Palande <ameya.palande@xxxxxxxxx> writes:

> When I enable CONFIG_CPU_IDLE and boot kernel, it hangs around the point
> when it switches to user space. I am able to reproduce this for 2.6.35
> on linux-omap and linux-2.6 trees.
>
> Has anyone else noticed the same thing for omap3 based boards?

I was able to reproduce on my n900 and found the problem.  I believe
this is the same problem that has been haunting the Overo folks in that
their console (on UART2 like n900) was not responding after suspend.

The patch below fixes the problem for me, and will post an official
version shortly.

Tested with l-o master (omap3_defconfig + CONFIG_CPU_IDLE=y) as well
with current PM branch.  PM branch (specifically pm-fixes sub-branch)
has been updated to include this fix.

Kevin


diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
index fb4994a..7b03426 100644
--- a/arch/arm/mach-omap2/pm34xx.c
+++ b/arch/arm/mach-omap2/pm34xx.c
@@ -480,7 +480,9 @@ void omap_sram_idle(void)
 	}
 
 	/* Disable IO-PAD and IO-CHAIN wakeup */
-	if (omap3_has_io_wakeup() && core_next_state < PWRDM_POWER_ON) {
+	if (omap3_has_io_wakeup() &&
+	    (per_next_state < PWRDM_POWER_ON ||
+	     core_next_state < PWRDM_POWER_ON)) {
 		prm_clear_mod_reg_bits(OMAP3430_EN_IO_MASK, WKUP_MOD, PM_WKEN);
 		omap3_disable_io_chain();
 	}
-- 
1.7.2.1



--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux