powerpc/64s/idle: Move soft interrupt mask logic into C code
authorNicholas Piggin <npiggin@gmail.com>
Tue, 13 Jun 2017 13:05:45 +0000 (23:05 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 19 Jun 2017 09:46:26 +0000 (19:46 +1000)
commit2201f994a5742c03e660623c385fd6897dd1fa2f
tree92d14aa455d4b11e0dac5eebae8f7a65ae0d9837
parent42bed042556261b56aa92e05f4f388f0f7ac1210
powerpc/64s/idle: Move soft interrupt mask logic into C code

This simplifies the asm and fixes irq-off tracing over sleep
instructions.

Also move powersave_nap check for POWER8 into C code, and move
PSSCR register value calculation for POWER9 into C.

Reviewed-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/hw_irq.h
arch/powerpc/include/asm/machdep.h
arch/powerpc/include/asm/processor.h
arch/powerpc/kernel/idle_book3s.S
arch/powerpc/kernel/irq.c
arch/powerpc/platforms/powernv/idle.c
arch/powerpc/platforms/powernv/smp.c
arch/powerpc/platforms/powernv/subcore.c
drivers/cpuidle/cpuidle-powernv.c