On Fri, Oct 12, 2012 at 1:24 AM, Joseph Lo <josephl@xxxxxxxxxx> wrote: > On Fri, 2012-10-12 at 15:54 +0800, Shawn Guo wrote: >> On Thu, Oct 11, 2012 at 09:48:45AM -0700, Colin Cross wrote: >> > As is, coupled cpuidle will work on Tegra30, but it will unnecessarily >> > wake up the secondary cpus during the transitions to off and back on >> > again. Those cpus will immediately go back to single-cpu LP2, >> >> I'm sure coupled cpuidle will work like that. We have the following >> code at the end of cpuidle_enter_state_coupled() to wait until all >> coupled cpus have exited idle. >> >> while (!cpuidle_coupled_no_cpus_ready(coupled)) >> cpu_relax(); >> >> The cpu woken up during the transitions will just loop there until all >> other 3 cpus exit from idle function. >> > > Did this a good idea if the CPU was been woken up from an interrupt but > it still needed to wait all other CPUs been woken up then it could > handle the interrupt? Each cpu enables its local interrupts between when it clears it's ready flag and when it enters the loop above, so it will already be handling interrupts. -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html