linux/arch/powerpc/platforms
Shreyas B. Prabhu bcef83a00d powerpc/powernv: Add platform support for stop instruction
POWER ISA v3 defines a new idle processor core mechanism. In summary,
 a) new instruction named stop is added. This instruction replaces
	instructions like nap, sleep, rvwinkle.
 b) new per thread SPR named Processor Stop Status and Control Register
	(PSSCR) is added which controls the behavior of stop instruction.

PSSCR layout:
----------------------------------------------------------
| PLS | /// | SD | ESL | EC | PSLL | /// | TR | MTL | RL |
----------------------------------------------------------
0      4     41   42    43   44     48    54   56    60

PSSCR key fields:
	Bits 0:3  - Power-Saving Level Status. This field indicates the lowest
	power-saving state the thread entered since stop instruction was last
	executed.

	Bit 42 - Enable State Loss
	0 - No state is lost irrespective of other fields
	1 - Allows state loss

	Bits 44:47 - Power-Saving Level Limit
	This limits the power-saving level that can be entered into.

	Bits 60:63 - Requested Level
	Used to specify which power-saving level must be entered on executing
	stop instruction

This patch adds support for stop instruction and PSSCR handling.

Reviewed-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com>
Signed-off-by: Shreyas B. Prabhu <shreyas@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2016-07-15 20:18:41 +10:00
..
8xx powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
40x powerpc: make of_device_ids const 2014-09-25 23:14:46 +10:00
44x powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
52xx powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
82xx powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
83xx powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
85xx powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
86xx powerpc/86xx: Consolidate common platform code 2016-03-11 19:14:12 -06:00
512x powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
amigaone powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
cell powerpc/cell: Don't use flat device-tree after boot 2016-07-13 18:15:36 +10:00
chrp powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
embedded6xx powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
maple powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
pasemi powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
powermac powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
powernv powerpc/powernv: Add platform support for stop instruction 2016-07-15 20:18:41 +10:00
ps3 powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
pseries powerpc/pseries: Remove call to memblock_add() 2016-07-15 20:18:37 +10:00
Kconfig QE: Move QE from arch/powerpc to drivers/soc 2015-12-22 17:12:56 -06:00
Kconfig.cputype powerpc/mm/radix: Add THP support for 4K linux page size 2016-05-11 21:53:58 +10:00
Makefile powerpc: Remove platforms/wsp and associated pieces 2014-06-11 16:35:38 +10:00
fsl_uli1575.c of/irq: Refactor interrupt-map parsing 2013-10-24 11:43:04 +01:00