All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/2] Enabling PSCI based idle on ARM 32-bit platforms
@ 2015-10-16 16:02 ` Lorenzo Pieralisi
  0 siblings, 0 replies; 30+ messages in thread
From: Lorenzo Pieralisi @ 2015-10-16 16:02 UTC (permalink / raw)
  To: linux-arm-kernel, linux-pm
  Cc: Lorenzo Pieralisi, Will Deacon, Sudeep Holla, Russell King,
	Daniel Lezcano, Catalin Marinas, Mark Rutland, Jisheng Zhang

This patch series is v3 of a previous posting:

http://lists.infradead.org/pipermail/linux-arm-kernel/2015-October/376418.html

v2->v3

- Removed additional PSCI file, merged functions in psci.c
- Added missing static scope to ARM psci_cpuidle_ops
- Applied review tags

v1->v2:

- Refactored patch 1 to remove cpu parameter from cpuidle_ops
  suspend hook
- Refactored psci_cpu_init_idle to stub out dt parsing function and
  make it usable on both ARM/ARM64 with no additional changes
- Updated ARM cpuidle_ops to new interfaces

PSCI firmware provides a kernel API that, through a standard interface,
allows to manage power states transitions in a seamless manner for
ARM and ARM64 systems.

Current PSCI code that initializes CPUidle states on PSCI based
systems lives in arch/arm64 directory but it is not ARM64 specific
and can be shared with ARM 32-bit systems so that the generic
ARM CPUidle driver can leverage the common PSCI interface.

This patch series moves PSCI CPUidle management code to
drivers/firmware directory so that ARM and ARM64 architecture
can actually share the code.

It is made up of two patches:

Patch 1 refactors ARM 32-bit generic idle implementation to remove
the cpu parameter from the cpuidle_ops suspend hook, in preparation
for a common PSCI implementation for ARM/ARM64 PSCI idle.

Patch 2 moves ARM64 PSCI CPUidle functions implementation to
drivers/firmware so that it can be shared with ARM 32-bit platforms
code. This patch also adds a PSCI entry section on ARM 32-bit systems
so that the PSCI CPUidle back-end can be enabled when the enable-method
corresponds to PSCI.

Patches apply on top of current patch stack to enable PSCI 1.0:

git://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/linux.git tags/firmware/psci-1.0

Tested on Juno board (ARM64), compile tested only on ARM 32-bit systems.

Lorenzo Pieralisi (2):
  ARM: cpuidle: remove cpu parameter from the cpuidle_ops suspend hook
  ARM64: kernel: PSCI: move PSCI idle management code to
    drivers/firmware

 arch/arm/include/asm/cpuidle.h |   2 +-
 arch/arm/kernel/cpuidle.c      |   2 +-
 arch/arm64/kernel/psci.c       |  99 +---------------------------------
 drivers/firmware/psci.c        | 119 +++++++++++++++++++++++++++++++++++++++++
 drivers/soc/qcom/spm.c         |  10 ++--
 include/linux/psci.h           |   3 ++
 6 files changed, 131 insertions(+), 104 deletions(-)

-- 
2.5.1


^ permalink raw reply	[flat|nested] 30+ messages in thread
* [PATCH v3 0/2] Enabling PSCI based idle on ARM 32-bit platforms
@ 2016-01-25 12:17 Lorenzo Pieralisi
  2016-01-25 12:17   ` Lorenzo Pieralisi
  0 siblings, 1 reply; 30+ messages in thread
From: Lorenzo Pieralisi @ 2016-01-25 12:17 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: linux-pm, Lorenzo Pieralisi, Russell King, Nicolas Pitre,
	Catalin Marinas, Sudeep Holla, Daniel Lezcano, Mark Rutland,
	Jisheng Zhang

This patch series is v3 of a previous posting:

http://lists.infradead.org/pipermail/linux-arm-kernel/2015-October/376418.html

v2->v3:

- Patch 1 merged
- Added ARM ARM_CPU_SUSPEND config option rework patch
- Added CPU_IDLE guard to prevent compiling code if not needed
- Added ARM_CPU_SUSPEND ARM_PSCI_FW dependency

v1->v2:

- Refactored patch 1 to remove cpu parameter from cpuidle_ops
  suspend hook
- Refactored psci_cpu_init_idle to stub out dt parsing function and
  make it usable on both ARM/ARM64 with no additional changes
- Updated ARM cpuidle_ops to new interfaces
- Fixed PSCI enable method string in ARM cpuidle_ops struct

PSCI firmware provides a kernel API that, through a standard interface,
allows to manage power states transitions in a seamless manner for
ARM and ARM64 systems.

Current PSCI code that initializes CPUidle states on PSCI based
systems lives in arch/arm64 directory but it is not ARM64 specific
and can be shared with ARM 32-bit systems so that the generic
ARM CPUidle driver can leverage the common PSCI interface.

This patch series moves PSCI CPUidle management code to
drivers/firmware directory so that ARM and ARM64 architecture
can actually share the code.

It is made up of two patches:

Patch 1 refactors ARM ARM_CPU_SUSPEND config dependencies

Patch 2 moves ARM64 PSCI CPUidle functions implementation to
drivers/firmware so that it can be shared with ARM 32-bit platforms
code. This patch also adds a PSCI entry section on ARM 32-bit systems
so that the PSCI CPUidle back-end can be enabled when the enable-method
corresponds to PSCI.

Tested on Juno board (ARM64), compile tested only on ARM 32-bit systems.

Lorenzo Pieralisi (2):
  ARM: rework ARM_CPU_SUSPEND dependencies
  ARM64: kernel: PSCI: move PSCI idle management code to
    drivers/firmware

 arch/arm/Kconfig         |   4 +-
 arch/arm64/kernel/psci.c |  99 +-------------------------------------
 drivers/firmware/psci.c  | 120 +++++++++++++++++++++++++++++++++++++++++++++++
 include/linux/psci.h     |   3 ++
 4 files changed, 127 insertions(+), 99 deletions(-)

-- 
2.5.1


^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2016-01-25 12:17 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-16 16:02 [PATCH v3 0/2] Enabling PSCI based idle on ARM 32-bit platforms Lorenzo Pieralisi
2015-10-16 16:02 ` Lorenzo Pieralisi
2015-10-16 16:02 ` [PATCH v3 1/2] ARM: cpuidle: remove cpu parameter from the cpuidle_ops suspend hook Lorenzo Pieralisi
2015-10-16 16:02   ` Lorenzo Pieralisi
2015-12-16 20:58   ` Daniel Lezcano
2015-12-16 20:58     ` Daniel Lezcano
2015-10-16 16:02 ` [PATCH v3 2/2] ARM64: kernel: PSCI: move PSCI idle management code to drivers/firmware Lorenzo Pieralisi
2015-10-16 16:02   ` Lorenzo Pieralisi
2015-12-16 20:57   ` Daniel Lezcano
2015-12-16 20:57     ` Daniel Lezcano
2016-01-05 10:59   ` Russell King - ARM Linux
2016-01-05 10:59     ` Russell King - ARM Linux
2016-01-05 12:31     ` Lorenzo Pieralisi
2016-01-05 12:31       ` Lorenzo Pieralisi
2016-01-05 12:51       ` Russell King - ARM Linux
2016-01-05 12:51         ` Russell King - ARM Linux
2016-01-05 13:27         ` Lorenzo Pieralisi
2016-01-05 13:27           ` Lorenzo Pieralisi
2016-01-05 13:34           ` Russell King - ARM Linux
2016-01-05 13:34             ` Russell King - ARM Linux
2016-01-05 15:28             ` Lorenzo Pieralisi
2016-01-05 15:28               ` Lorenzo Pieralisi
2016-01-06 16:55             ` Lorenzo Pieralisi
2016-01-06 16:55               ` Lorenzo Pieralisi
2016-01-06 21:44               ` Russell King - ARM Linux
2016-01-06 21:44                 ` Russell King - ARM Linux
2016-01-07  9:46                 ` Lorenzo Pieralisi
2016-01-07  9:46                   ` Lorenzo Pieralisi
2016-01-25 12:17 [PATCH v3 0/2] Enabling PSCI based idle on ARM 32-bit platforms Lorenzo Pieralisi
2016-01-25 12:17 ` [PATCH v3 2/2] ARM64: kernel: PSCI: move PSCI idle management code to drivers/firmware Lorenzo Pieralisi
2016-01-25 12:17   ` Lorenzo Pieralisi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.