Thread (34 messages) 34 messages, 6 authors, 2014-01-30

[PATCH 2/9] ARM64: get rid of arch_cpu_idle_prepare()

From: catalin.marinas@arm.com (Catalin Marinas)
Date: 2014-01-27 15:58:36
Also in: linux-pm, linux-sh, linuxppc-dev, lkml

On Mon, Jan 27, 2014 at 03:51:02PM +0000, Nicolas Pitre wrote:
On Mon, 27 Jan 2014, Catalin Marinas wrote:
quoted
On Mon, Jan 27, 2014 at 06:08:17AM +0000, Nicolas Pitre wrote:
quoted
ARM and ARM64 are the only two architectures implementing
arch_cpu_idle_prepare() simply to call local_fiq_enable().

We have secondary_start_kernel() already calling local_fiq_enable() and
this is done a second time in arch_cpu_idle_prepare() in that case. And
enabling FIQs has nothing to do with idling the CPU to start with.

So let's introduce init_fiq_boot_cpu() to take care of FIQs on the boot
CPU and remove arch_cpu_idle_prepare(). This is now done a bit earlier
at late_initcall time but this shouldn't make a difference in practice
given that FIQs are not currently used on ARM64.

Signed-off-by: Nicolas Pitre <redacted>
For arm64, we could simply remove any reference to FIQs. I'm not aware
of anyone using them.
OK. What if I sumply remove arch_cpu_idle_prepare() and let you do the 
remove the rest?

IMHO I'd simply remove local_fiq_{enable/disable}() from 
arm64/kernel/smp.c and leave the infrastructure in place in case someone 
needs it eventually.  In which case I could include that into my patch 
as well.
Sounds good. We can keep the local_fiq_*() functions but remove about 4
calling sites (process.c and smp.c) until needed.

Thanks.

-- 
Catalin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help