All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] arm64: remove generic ARM cpuidle support
@ 2022-05-29 18:13 ` Michael Walle
  0 siblings, 0 replies; 20+ messages in thread
From: Michael Walle @ 2022-05-29 18:13 UTC (permalink / raw)
  To: Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm, Michael Walle

Playing with an own PSCI implementation, I've noticed that the cpuidle-arm
driver doesn't work on arm64. It doesn't probe because since commit
788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit removed
the cpu_idle_init and cpu_suspend ops.

It left me puzzled for quite some time. It seems that the cpuidle-psci is
the preferred one and this has been the case for quite some time. The
mentioned commit first appeared in v5.4.

Remove the ARM64 support for the cpuidle-arm driver, which then let us
remove all the supporting arch code.

Michael Walle (2):
  cpuidle: cpuidle-arm: remove arm64 support
  arm64: cpuidle: remove generic cpuidle support

 arch/arm64/include/asm/cpu_ops.h |  9 ---------
 arch/arm64/include/asm/cpuidle.h | 15 ---------------
 arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
 drivers/cpuidle/Kconfig.arm      |  3 ++-
 4 files changed, 2 insertions(+), 54 deletions(-)

-- 
2.30.2


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

* [PATCH 0/2] arm64: remove generic ARM cpuidle support
@ 2022-05-29 18:13 ` Michael Walle
  0 siblings, 0 replies; 20+ messages in thread
From: Michael Walle @ 2022-05-29 18:13 UTC (permalink / raw)
  To: Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm, Michael Walle

Playing with an own PSCI implementation, I've noticed that the cpuidle-arm
driver doesn't work on arm64. It doesn't probe because since commit
788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit removed
the cpu_idle_init and cpu_suspend ops.

It left me puzzled for quite some time. It seems that the cpuidle-psci is
the preferred one and this has been the case for quite some time. The
mentioned commit first appeared in v5.4.

Remove the ARM64 support for the cpuidle-arm driver, which then let us
remove all the supporting arch code.

Michael Walle (2):
  cpuidle: cpuidle-arm: remove arm64 support
  arm64: cpuidle: remove generic cpuidle support

 arch/arm64/include/asm/cpu_ops.h |  9 ---------
 arch/arm64/include/asm/cpuidle.h | 15 ---------------
 arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
 drivers/cpuidle/Kconfig.arm      |  3 ++-
 4 files changed, 2 insertions(+), 54 deletions(-)

-- 
2.30.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* [PATCH 1/2] cpuidle: cpuidle-arm: remove arm64 support
  2022-05-29 18:13 ` Michael Walle
@ 2022-05-29 18:13   ` Michael Walle
  -1 siblings, 0 replies; 20+ messages in thread
From: Michael Walle @ 2022-05-29 18:13 UTC (permalink / raw)
  To: Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm, Michael Walle

Since commit 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle
driver") the generic ARM cpuidle driver doesn't probe anymore because
arm_cpuidle_init() will always return -EOPNOTSUPP. That is, because the
mentioned commit removes the only .cpu_suspend and .cpu_init_idle
provider.

Signed-off-by: Michael Walle <michael@walle.cc>
---
 drivers/cpuidle/Kconfig.arm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/cpuidle/Kconfig.arm b/drivers/cpuidle/Kconfig.arm
index be7f512109f7..747aa537389b 100644
--- a/drivers/cpuidle/Kconfig.arm
+++ b/drivers/cpuidle/Kconfig.arm
@@ -3,7 +3,8 @@
 # ARM CPU Idle drivers
 #
 config ARM_CPUIDLE
-	bool "Generic ARM/ARM64 CPU idle Driver"
+	bool "Generic ARM CPU idle Driver"
+	depends on ARM
 	select DT_IDLE_STATES
 	select CPU_IDLE_MULTIPLE_DRIVERS
 	help
-- 
2.30.2


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

* [PATCH 1/2] cpuidle: cpuidle-arm: remove arm64 support
@ 2022-05-29 18:13   ` Michael Walle
  0 siblings, 0 replies; 20+ messages in thread
From: Michael Walle @ 2022-05-29 18:13 UTC (permalink / raw)
  To: Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm, Michael Walle

Since commit 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle
driver") the generic ARM cpuidle driver doesn't probe anymore because
arm_cpuidle_init() will always return -EOPNOTSUPP. That is, because the
mentioned commit removes the only .cpu_suspend and .cpu_init_idle
provider.

Signed-off-by: Michael Walle <michael@walle.cc>
---
 drivers/cpuidle/Kconfig.arm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/cpuidle/Kconfig.arm b/drivers/cpuidle/Kconfig.arm
index be7f512109f7..747aa537389b 100644
--- a/drivers/cpuidle/Kconfig.arm
+++ b/drivers/cpuidle/Kconfig.arm
@@ -3,7 +3,8 @@
 # ARM CPU Idle drivers
 #
 config ARM_CPUIDLE
-	bool "Generic ARM/ARM64 CPU idle Driver"
+	bool "Generic ARM CPU idle Driver"
+	depends on ARM
 	select DT_IDLE_STATES
 	select CPU_IDLE_MULTIPLE_DRIVERS
 	help
-- 
2.30.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* [PATCH 2/2] arm64: cpuidle: remove generic cpuidle support
  2022-05-29 18:13 ` Michael Walle
@ 2022-05-29 18:13   ` Michael Walle
  -1 siblings, 0 replies; 20+ messages in thread
From: Michael Walle @ 2022-05-29 18:13 UTC (permalink / raw)
  To: Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm, Michael Walle

The arm64 support of the generic ARM cpuidle driver was removed. This
let us remove all support code for it.

Signed-off-by: Michael Walle <michael@walle.cc>
---
 arch/arm64/include/asm/cpu_ops.h |  9 ---------
 arch/arm64/include/asm/cpuidle.h | 15 ---------------
 arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
 3 files changed, 53 deletions(-)

diff --git a/arch/arm64/include/asm/cpu_ops.h b/arch/arm64/include/asm/cpu_ops.h
index e95c4df83911..a444c8915e88 100644
--- a/arch/arm64/include/asm/cpu_ops.h
+++ b/arch/arm64/include/asm/cpu_ops.h
@@ -31,11 +31,6 @@
  * @cpu_die:	Makes a cpu leave the kernel. Must not fail. Called from the
  *		cpu being killed.
  * @cpu_kill:  Ensures a cpu has left the kernel. Called from another cpu.
- * @cpu_init_idle: Reads any data necessary to initialize CPU idle states for
- *		   a proposed logical id.
- * @cpu_suspend: Suspends a cpu and saves the required context. May fail owing
- *               to wrong parameters or error conditions. Called from the
- *               CPU being suspended. Must be called with IRQs disabled.
  */
 struct cpu_operations {
 	const char	*name;
@@ -49,10 +44,6 @@ struct cpu_operations {
 	void		(*cpu_die)(unsigned int cpu);
 	int		(*cpu_kill)(unsigned int cpu);
 #endif
-#ifdef CONFIG_CPU_IDLE
-	int		(*cpu_init_idle)(unsigned int);
-	int		(*cpu_suspend)(unsigned long);
-#endif
 };
 
 int __init init_cpu_ops(int cpu);
diff --git a/arch/arm64/include/asm/cpuidle.h b/arch/arm64/include/asm/cpuidle.h
index 14a19d1141bd..2047713e097d 100644
--- a/arch/arm64/include/asm/cpuidle.h
+++ b/arch/arm64/include/asm/cpuidle.h
@@ -4,21 +4,6 @@
 
 #include <asm/proc-fns.h>
 
-#ifdef CONFIG_CPU_IDLE
-extern int arm_cpuidle_init(unsigned int cpu);
-extern int arm_cpuidle_suspend(int index);
-#else
-static inline int arm_cpuidle_init(unsigned int cpu)
-{
-	return -EOPNOTSUPP;
-}
-
-static inline int arm_cpuidle_suspend(int index)
-{
-	return -EOPNOTSUPP;
-}
-#endif
-
 #ifdef CONFIG_ARM64_PSEUDO_NMI
 #include <asm/arch_gicv3.h>
 
diff --git a/arch/arm64/kernel/cpuidle.c b/arch/arm64/kernel/cpuidle.c
index 3006f4324808..4150e308e99c 100644
--- a/arch/arm64/kernel/cpuidle.c
+++ b/arch/arm64/kernel/cpuidle.c
@@ -13,35 +13,6 @@
 #include <linux/of_device.h>
 #include <linux/psci.h>
 
-#include <asm/cpuidle.h>
-#include <asm/cpu_ops.h>
-
-int arm_cpuidle_init(unsigned int cpu)
-{
-	const struct cpu_operations *ops = get_cpu_ops(cpu);
-	int ret = -EOPNOTSUPP;
-
-	if (ops && ops->cpu_suspend && ops->cpu_init_idle)
-		ret = ops->cpu_init_idle(cpu);
-
-	return ret;
-}
-
-/**
- * arm_cpuidle_suspend() - function to enter a low-power idle state
- * @index: argument to pass to CPU suspend operations
- *
- * Return: 0 on success, -EOPNOTSUPP if CPU suspend hook not initialized, CPU
- * operations back-end error code otherwise.
- */
-int arm_cpuidle_suspend(int index)
-{
-	int cpu = smp_processor_id();
-	const struct cpu_operations *ops = get_cpu_ops(cpu);
-
-	return ops->cpu_suspend(index);
-}
-
 #ifdef CONFIG_ACPI
 
 #include <acpi/processor.h>
-- 
2.30.2


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

* [PATCH 2/2] arm64: cpuidle: remove generic cpuidle support
@ 2022-05-29 18:13   ` Michael Walle
  0 siblings, 0 replies; 20+ messages in thread
From: Michael Walle @ 2022-05-29 18:13 UTC (permalink / raw)
  To: Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm, Michael Walle

The arm64 support of the generic ARM cpuidle driver was removed. This
let us remove all support code for it.

Signed-off-by: Michael Walle <michael@walle.cc>
---
 arch/arm64/include/asm/cpu_ops.h |  9 ---------
 arch/arm64/include/asm/cpuidle.h | 15 ---------------
 arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
 3 files changed, 53 deletions(-)

diff --git a/arch/arm64/include/asm/cpu_ops.h b/arch/arm64/include/asm/cpu_ops.h
index e95c4df83911..a444c8915e88 100644
--- a/arch/arm64/include/asm/cpu_ops.h
+++ b/arch/arm64/include/asm/cpu_ops.h
@@ -31,11 +31,6 @@
  * @cpu_die:	Makes a cpu leave the kernel. Must not fail. Called from the
  *		cpu being killed.
  * @cpu_kill:  Ensures a cpu has left the kernel. Called from another cpu.
- * @cpu_init_idle: Reads any data necessary to initialize CPU idle states for
- *		   a proposed logical id.
- * @cpu_suspend: Suspends a cpu and saves the required context. May fail owing
- *               to wrong parameters or error conditions. Called from the
- *               CPU being suspended. Must be called with IRQs disabled.
  */
 struct cpu_operations {
 	const char	*name;
@@ -49,10 +44,6 @@ struct cpu_operations {
 	void		(*cpu_die)(unsigned int cpu);
 	int		(*cpu_kill)(unsigned int cpu);
 #endif
-#ifdef CONFIG_CPU_IDLE
-	int		(*cpu_init_idle)(unsigned int);
-	int		(*cpu_suspend)(unsigned long);
-#endif
 };
 
 int __init init_cpu_ops(int cpu);
diff --git a/arch/arm64/include/asm/cpuidle.h b/arch/arm64/include/asm/cpuidle.h
index 14a19d1141bd..2047713e097d 100644
--- a/arch/arm64/include/asm/cpuidle.h
+++ b/arch/arm64/include/asm/cpuidle.h
@@ -4,21 +4,6 @@
 
 #include <asm/proc-fns.h>
 
-#ifdef CONFIG_CPU_IDLE
-extern int arm_cpuidle_init(unsigned int cpu);
-extern int arm_cpuidle_suspend(int index);
-#else
-static inline int arm_cpuidle_init(unsigned int cpu)
-{
-	return -EOPNOTSUPP;
-}
-
-static inline int arm_cpuidle_suspend(int index)
-{
-	return -EOPNOTSUPP;
-}
-#endif
-
 #ifdef CONFIG_ARM64_PSEUDO_NMI
 #include <asm/arch_gicv3.h>
 
diff --git a/arch/arm64/kernel/cpuidle.c b/arch/arm64/kernel/cpuidle.c
index 3006f4324808..4150e308e99c 100644
--- a/arch/arm64/kernel/cpuidle.c
+++ b/arch/arm64/kernel/cpuidle.c
@@ -13,35 +13,6 @@
 #include <linux/of_device.h>
 #include <linux/psci.h>
 
-#include <asm/cpuidle.h>
-#include <asm/cpu_ops.h>
-
-int arm_cpuidle_init(unsigned int cpu)
-{
-	const struct cpu_operations *ops = get_cpu_ops(cpu);
-	int ret = -EOPNOTSUPP;
-
-	if (ops && ops->cpu_suspend && ops->cpu_init_idle)
-		ret = ops->cpu_init_idle(cpu);
-
-	return ret;
-}
-
-/**
- * arm_cpuidle_suspend() - function to enter a low-power idle state
- * @index: argument to pass to CPU suspend operations
- *
- * Return: 0 on success, -EOPNOTSUPP if CPU suspend hook not initialized, CPU
- * operations back-end error code otherwise.
- */
-int arm_cpuidle_suspend(int index)
-{
-	int cpu = smp_processor_id();
-	const struct cpu_operations *ops = get_cpu_ops(cpu);
-
-	return ops->cpu_suspend(index);
-}
-
 #ifdef CONFIG_ACPI
 
 #include <acpi/processor.h>
-- 
2.30.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 1/2] cpuidle: cpuidle-arm: remove arm64 support
  2022-05-29 18:13   ` Michael Walle
@ 2022-05-30 14:32     ` Sudeep Holla
  -1 siblings, 0 replies; 20+ messages in thread
From: Sudeep Holla @ 2022-05-30 14:32 UTC (permalink / raw)
  To: Michael Walle
  Cc: Catalin Marinas, Lorenzo Pieralisi, Sudeep Holla, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon, linux-arm-kernel, linux-kernel,
	linux-pm

On Sun, May 29, 2022 at 08:13:28PM +0200, Michael Walle wrote:
> Since commit 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle
> driver") the generic ARM cpuidle driver doesn't probe anymore because
> arm_cpuidle_init() will always return -EOPNOTSUPP. That is, because the
> mentioned commit removes the only .cpu_suspend and .cpu_init_idle
> provider.

Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>

-- 
Regards,
Sudeep

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 1/2] cpuidle: cpuidle-arm: remove arm64 support
@ 2022-05-30 14:32     ` Sudeep Holla
  0 siblings, 0 replies; 20+ messages in thread
From: Sudeep Holla @ 2022-05-30 14:32 UTC (permalink / raw)
  To: Michael Walle
  Cc: Catalin Marinas, Lorenzo Pieralisi, Sudeep Holla, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon, linux-arm-kernel, linux-kernel,
	linux-pm

On Sun, May 29, 2022 at 08:13:28PM +0200, Michael Walle wrote:
> Since commit 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle
> driver") the generic ARM cpuidle driver doesn't probe anymore because
> arm_cpuidle_init() will always return -EOPNOTSUPP. That is, because the
> mentioned commit removes the only .cpu_suspend and .cpu_init_idle
> provider.

Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>

-- 
Regards,
Sudeep

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

* Re: [PATCH 2/2] arm64: cpuidle: remove generic cpuidle support
  2022-05-29 18:13   ` Michael Walle
@ 2022-05-30 14:33     ` Sudeep Holla
  -1 siblings, 0 replies; 20+ messages in thread
From: Sudeep Holla @ 2022-05-30 14:33 UTC (permalink / raw)
  To: Michael Walle
  Cc: Catalin Marinas, Lorenzo Pieralisi, Daniel Lezcano, Sudeep Holla,
	Rafael J . Wysocki, Will Deacon, linux-arm-kernel, linux-kernel,
	linux-pm

On Sun, May 29, 2022 at 08:13:29PM +0200, Michael Walle wrote:
> The arm64 support of the generic ARM cpuidle driver was removed. This
> let us remove all support code for it.
>

Thanks for doing this, we initially had plans to do this one release after
PSCI idle driver got merged but clearly slipped through the cracks.

Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>

-- 
Regards,
Sudeep

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 2/2] arm64: cpuidle: remove generic cpuidle support
@ 2022-05-30 14:33     ` Sudeep Holla
  0 siblings, 0 replies; 20+ messages in thread
From: Sudeep Holla @ 2022-05-30 14:33 UTC (permalink / raw)
  To: Michael Walle
  Cc: Catalin Marinas, Lorenzo Pieralisi, Daniel Lezcano, Sudeep Holla,
	Rafael J . Wysocki, Will Deacon, linux-arm-kernel, linux-kernel,
	linux-pm

On Sun, May 29, 2022 at 08:13:29PM +0200, Michael Walle wrote:
> The arm64 support of the generic ARM cpuidle driver was removed. This
> let us remove all support code for it.
>

Thanks for doing this, we initially had plans to do this one release after
PSCI idle driver got merged but clearly slipped through the cracks.

Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>

-- 
Regards,
Sudeep

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
  2022-05-29 18:13 ` Michael Walle
@ 2022-05-30 15:37   ` Daniel Lezcano
  -1 siblings, 0 replies; 20+ messages in thread
From: Daniel Lezcano @ 2022-05-30 15:37 UTC (permalink / raw)
  To: Michael Walle, Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm

On 29/05/2022 20:13, Michael Walle wrote:
> Playing with an own PSCI implementation, I've noticed that the cpuidle-arm
> driver doesn't work on arm64. It doesn't probe because since commit
> 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit removed
> the cpu_idle_init and cpu_suspend ops.
> 
> It left me puzzled for quite some time. It seems that the cpuidle-psci is
> the preferred one and this has been the case for quite some time. The
> mentioned commit first appeared in v5.4.
> 
> Remove the ARM64 support for the cpuidle-arm driver, which then let us
> remove all the supporting arch code.
> 
> Michael Walle (2):
>    cpuidle: cpuidle-arm: remove arm64 support
>    arm64: cpuidle: remove generic cpuidle support
> 
>   arch/arm64/include/asm/cpu_ops.h |  9 ---------
>   arch/arm64/include/asm/cpuidle.h | 15 ---------------
>   arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
>   drivers/cpuidle/Kconfig.arm      |  3 ++-
>   4 files changed, 2 insertions(+), 54 deletions(-)

Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>


-- 
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
@ 2022-05-30 15:37   ` Daniel Lezcano
  0 siblings, 0 replies; 20+ messages in thread
From: Daniel Lezcano @ 2022-05-30 15:37 UTC (permalink / raw)
  To: Michael Walle, Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm

On 29/05/2022 20:13, Michael Walle wrote:
> Playing with an own PSCI implementation, I've noticed that the cpuidle-arm
> driver doesn't work on arm64. It doesn't probe because since commit
> 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit removed
> the cpu_idle_init and cpu_suspend ops.
> 
> It left me puzzled for quite some time. It seems that the cpuidle-psci is
> the preferred one and this has been the case for quite some time. The
> mentioned commit first appeared in v5.4.
> 
> Remove the ARM64 support for the cpuidle-arm driver, which then let us
> remove all the supporting arch code.
> 
> Michael Walle (2):
>    cpuidle: cpuidle-arm: remove arm64 support
>    arm64: cpuidle: remove generic cpuidle support
> 
>   arch/arm64/include/asm/cpu_ops.h |  9 ---------
>   arch/arm64/include/asm/cpuidle.h | 15 ---------------
>   arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
>   drivers/cpuidle/Kconfig.arm      |  3 ++-
>   4 files changed, 2 insertions(+), 54 deletions(-)

Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>


-- 
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
  2022-05-29 18:13 ` Michael Walle
@ 2022-06-22 11:59   ` Michael Walle
  -1 siblings, 0 replies; 20+ messages in thread
From: Michael Walle @ 2022-06-22 11:59 UTC (permalink / raw)
  To: Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm

Am 2022-05-29 20:13, schrieb Michael Walle:
> Playing with an own PSCI implementation, I've noticed that the 
> cpuidle-arm
> driver doesn't work on arm64. It doesn't probe because since commit
> 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit 
> removed
> the cpu_idle_init and cpu_suspend ops.
> 
> It left me puzzled for quite some time. It seems that the cpuidle-psci 
> is
> the preferred one and this has been the case for quite some time. The
> mentioned commit first appeared in v5.4.
> 
> Remove the ARM64 support for the cpuidle-arm driver, which then let us
> remove all the supporting arch code.
> 
> Michael Walle (2):
>   cpuidle: cpuidle-arm: remove arm64 support
>   arm64: cpuidle: remove generic cpuidle support
> 
>  arch/arm64/include/asm/cpu_ops.h |  9 ---------
>  arch/arm64/include/asm/cpuidle.h | 15 ---------------
>  arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
>  drivers/cpuidle/Kconfig.arm      |  3 ++-
>  4 files changed, 2 insertions(+), 54 deletions(-)

Through which tree should this patchset go? I've seen it is marked as
"Handled Elsewere" in the linux pm patchwork [1].

-michael

[1] 
https://patchwork.kernel.org/project/linux-pm/patch/20220529181329.2345722-2-michael@walle.cc/

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
@ 2022-06-22 11:59   ` Michael Walle
  0 siblings, 0 replies; 20+ messages in thread
From: Michael Walle @ 2022-06-22 11:59 UTC (permalink / raw)
  To: Catalin Marinas, Sudeep Holla, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon
  Cc: linux-arm-kernel, linux-kernel, linux-pm

Am 2022-05-29 20:13, schrieb Michael Walle:
> Playing with an own PSCI implementation, I've noticed that the 
> cpuidle-arm
> driver doesn't work on arm64. It doesn't probe because since commit
> 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit 
> removed
> the cpu_idle_init and cpu_suspend ops.
> 
> It left me puzzled for quite some time. It seems that the cpuidle-psci 
> is
> the preferred one and this has been the case for quite some time. The
> mentioned commit first appeared in v5.4.
> 
> Remove the ARM64 support for the cpuidle-arm driver, which then let us
> remove all the supporting arch code.
> 
> Michael Walle (2):
>   cpuidle: cpuidle-arm: remove arm64 support
>   arm64: cpuidle: remove generic cpuidle support
> 
>  arch/arm64/include/asm/cpu_ops.h |  9 ---------
>  arch/arm64/include/asm/cpuidle.h | 15 ---------------
>  arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
>  drivers/cpuidle/Kconfig.arm      |  3 ++-
>  4 files changed, 2 insertions(+), 54 deletions(-)

Through which tree should this patchset go? I've seen it is marked as
"Handled Elsewere" in the linux pm patchwork [1].

-michael

[1] 
https://patchwork.kernel.org/project/linux-pm/patch/20220529181329.2345722-2-michael@walle.cc/

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
  2022-06-22 11:59   ` Michael Walle
@ 2022-06-22 14:07     ` Sudeep Holla
  -1 siblings, 0 replies; 20+ messages in thread
From: Sudeep Holla @ 2022-06-22 14:07 UTC (permalink / raw)
  To: Michael Walle
  Cc: Catalin Marinas, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon, linux-arm-kernel, linux-kernel,
	linux-pm

On Wed, Jun 22, 2022 at 01:59:07PM +0200, Michael Walle wrote:
> Am 2022-05-29 20:13, schrieb Michael Walle:
> > Playing with an own PSCI implementation, I've noticed that the
> > cpuidle-arm
> > driver doesn't work on arm64. It doesn't probe because since commit
> > 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> > arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit
> > removed
> > the cpu_idle_init and cpu_suspend ops.
> > 
> > It left me puzzled for quite some time. It seems that the cpuidle-psci
> > is
> > the preferred one and this has been the case for quite some time. The
> > mentioned commit first appeared in v5.4.
> > 
> > Remove the ARM64 support for the cpuidle-arm driver, which then let us
> > remove all the supporting arch code.
> > 
> > Michael Walle (2):
> >   cpuidle: cpuidle-arm: remove arm64 support
> >   arm64: cpuidle: remove generic cpuidle support
> > 
> >  arch/arm64/include/asm/cpu_ops.h |  9 ---------
> >  arch/arm64/include/asm/cpuidle.h | 15 ---------------
> >  arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
> >  drivers/cpuidle/Kconfig.arm      |  3 ++-
> >  4 files changed, 2 insertions(+), 54 deletions(-)
> 
> Through which tree should this patchset go? I've seen it is marked as
> "Handled Elsewere" in the linux pm patchwork [1].
> 

Generally based on the changes, it is decided. I can see why Rafael would
have marked so in PM patchwork. Daniel has already acked small change in
CPUidle config file while the bulk is removal of arm64 code. So, it is
better to route it via arm64 tree.

Will,

Assuming you will handle v5.20, can you pick this up ?

-- 
Regards,
Sudeep

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
@ 2022-06-22 14:07     ` Sudeep Holla
  0 siblings, 0 replies; 20+ messages in thread
From: Sudeep Holla @ 2022-06-22 14:07 UTC (permalink / raw)
  To: Michael Walle
  Cc: Catalin Marinas, Lorenzo Pieralisi, Daniel Lezcano,
	Rafael J . Wysocki, Will Deacon, linux-arm-kernel, linux-kernel,
	linux-pm

On Wed, Jun 22, 2022 at 01:59:07PM +0200, Michael Walle wrote:
> Am 2022-05-29 20:13, schrieb Michael Walle:
> > Playing with an own PSCI implementation, I've noticed that the
> > cpuidle-arm
> > driver doesn't work on arm64. It doesn't probe because since commit
> > 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> > arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit
> > removed
> > the cpu_idle_init and cpu_suspend ops.
> > 
> > It left me puzzled for quite some time. It seems that the cpuidle-psci
> > is
> > the preferred one and this has been the case for quite some time. The
> > mentioned commit first appeared in v5.4.
> > 
> > Remove the ARM64 support for the cpuidle-arm driver, which then let us
> > remove all the supporting arch code.
> > 
> > Michael Walle (2):
> >   cpuidle: cpuidle-arm: remove arm64 support
> >   arm64: cpuidle: remove generic cpuidle support
> > 
> >  arch/arm64/include/asm/cpu_ops.h |  9 ---------
> >  arch/arm64/include/asm/cpuidle.h | 15 ---------------
> >  arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
> >  drivers/cpuidle/Kconfig.arm      |  3 ++-
> >  4 files changed, 2 insertions(+), 54 deletions(-)
> 
> Through which tree should this patchset go? I've seen it is marked as
> "Handled Elsewere" in the linux pm patchwork [1].
> 

Generally based on the changes, it is decided. I can see why Rafael would
have marked so in PM patchwork. Daniel has already acked small change in
CPUidle config file while the bulk is removal of arm64 code. So, it is
better to route it via arm64 tree.

Will,

Assuming you will handle v5.20, can you pick this up ?

-- 
Regards,
Sudeep

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
  2022-06-22 14:07     ` Sudeep Holla
@ 2022-06-23 13:19       ` Will Deacon
  -1 siblings, 0 replies; 20+ messages in thread
From: Will Deacon @ 2022-06-23 13:19 UTC (permalink / raw)
  To: Sudeep Holla
  Cc: Michael Walle, Catalin Marinas, Lorenzo Pieralisi,
	Daniel Lezcano, Rafael J . Wysocki, linux-arm-kernel,
	linux-kernel, linux-pm

On Wed, Jun 22, 2022 at 03:07:48PM +0100, Sudeep Holla wrote:
> On Wed, Jun 22, 2022 at 01:59:07PM +0200, Michael Walle wrote:
> > Am 2022-05-29 20:13, schrieb Michael Walle:
> > > Playing with an own PSCI implementation, I've noticed that the
> > > cpuidle-arm
> > > driver doesn't work on arm64. It doesn't probe because since commit
> > > 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> > > arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit
> > > removed
> > > the cpu_idle_init and cpu_suspend ops.
> > > 
> > > It left me puzzled for quite some time. It seems that the cpuidle-psci
> > > is
> > > the preferred one and this has been the case for quite some time. The
> > > mentioned commit first appeared in v5.4.
> > > 
> > > Remove the ARM64 support for the cpuidle-arm driver, which then let us
> > > remove all the supporting arch code.
> > > 
> > > Michael Walle (2):
> > >   cpuidle: cpuidle-arm: remove arm64 support
> > >   arm64: cpuidle: remove generic cpuidle support
> > > 
> > >  arch/arm64/include/asm/cpu_ops.h |  9 ---------
> > >  arch/arm64/include/asm/cpuidle.h | 15 ---------------
> > >  arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
> > >  drivers/cpuidle/Kconfig.arm      |  3 ++-
> > >  4 files changed, 2 insertions(+), 54 deletions(-)
> > 
> > Through which tree should this patchset go? I've seen it is marked as
> > "Handled Elsewere" in the linux pm patchwork [1].
> > 
> 
> Generally based on the changes, it is decided. I can see why Rafael would
> have marked so in PM patchwork. Daniel has already acked small change in
> CPUidle config file while the bulk is removal of arm64 code. So, it is
> better to route it via arm64 tree.
> 
> Will,
> 
> Assuming you will handle v5.20, can you pick this up ?

Yup, on it.

Will

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
@ 2022-06-23 13:19       ` Will Deacon
  0 siblings, 0 replies; 20+ messages in thread
From: Will Deacon @ 2022-06-23 13:19 UTC (permalink / raw)
  To: Sudeep Holla
  Cc: Michael Walle, Catalin Marinas, Lorenzo Pieralisi,
	Daniel Lezcano, Rafael J . Wysocki, linux-arm-kernel,
	linux-kernel, linux-pm

On Wed, Jun 22, 2022 at 03:07:48PM +0100, Sudeep Holla wrote:
> On Wed, Jun 22, 2022 at 01:59:07PM +0200, Michael Walle wrote:
> > Am 2022-05-29 20:13, schrieb Michael Walle:
> > > Playing with an own PSCI implementation, I've noticed that the
> > > cpuidle-arm
> > > driver doesn't work on arm64. It doesn't probe because since commit
> > > 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> > > arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit
> > > removed
> > > the cpu_idle_init and cpu_suspend ops.
> > > 
> > > It left me puzzled for quite some time. It seems that the cpuidle-psci
> > > is
> > > the preferred one and this has been the case for quite some time. The
> > > mentioned commit first appeared in v5.4.
> > > 
> > > Remove the ARM64 support for the cpuidle-arm driver, which then let us
> > > remove all the supporting arch code.
> > > 
> > > Michael Walle (2):
> > >   cpuidle: cpuidle-arm: remove arm64 support
> > >   arm64: cpuidle: remove generic cpuidle support
> > > 
> > >  arch/arm64/include/asm/cpu_ops.h |  9 ---------
> > >  arch/arm64/include/asm/cpuidle.h | 15 ---------------
> > >  arch/arm64/kernel/cpuidle.c      | 29 -----------------------------
> > >  drivers/cpuidle/Kconfig.arm      |  3 ++-
> > >  4 files changed, 2 insertions(+), 54 deletions(-)
> > 
> > Through which tree should this patchset go? I've seen it is marked as
> > "Handled Elsewere" in the linux pm patchwork [1].
> > 
> 
> Generally based on the changes, it is decided. I can see why Rafael would
> have marked so in PM patchwork. Daniel has already acked small change in
> CPUidle config file while the bulk is removal of arm64 code. So, it is
> better to route it via arm64 tree.
> 
> Will,
> 
> Assuming you will handle v5.20, can you pick this up ?

Yup, on it.

Will

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
  2022-05-29 18:13 ` Michael Walle
@ 2022-06-23 19:31   ` Will Deacon
  -1 siblings, 0 replies; 20+ messages in thread
From: Will Deacon @ 2022-06-23 19:31 UTC (permalink / raw)
  To: Daniel Lezcano, Catalin Marinas, Michael Walle, Sudeep Holla,
	Rafael J . Wysocki, Lorenzo Pieralisi
  Cc: kernel-team, Will Deacon, linux-kernel, linux-arm-kernel, linux-pm

On Sun, 29 May 2022 20:13:27 +0200, Michael Walle wrote:
> Playing with an own PSCI implementation, I've noticed that the cpuidle-arm
> driver doesn't work on arm64. It doesn't probe because since commit
> 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit removed
> the cpu_idle_init and cpu_suspend ops.
> 
> It left me puzzled for quite some time. It seems that the cpuidle-psci is
> the preferred one and this has been the case for quite some time. The
> mentioned commit first appeared in v5.4.
> 
> [...]

Applied to arm64 (for-next/cpuidle), thanks!

[1/2] cpuidle: cpuidle-arm: remove arm64 support
      https://git.kernel.org/arm64/c/51280acad855
[2/2] arm64: cpuidle: remove generic cpuidle support
      https://git.kernel.org/arm64/c/471f80db9ef1

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH 0/2] arm64: remove generic ARM cpuidle support
@ 2022-06-23 19:31   ` Will Deacon
  0 siblings, 0 replies; 20+ messages in thread
From: Will Deacon @ 2022-06-23 19:31 UTC (permalink / raw)
  To: Daniel Lezcano, Catalin Marinas, Michael Walle, Sudeep Holla,
	Rafael J . Wysocki, Lorenzo Pieralisi
  Cc: kernel-team, Will Deacon, linux-kernel, linux-arm-kernel, linux-pm

On Sun, 29 May 2022 20:13:27 +0200, Michael Walle wrote:
> Playing with an own PSCI implementation, I've noticed that the cpuidle-arm
> driver doesn't work on arm64. It doesn't probe because since commit
> 788961462f34 ("ARM: psci: cpuidle: Enable PSCI CPUidle driver") the
> arm_cpuidle_init() can only return -EOPNOTSUPP, because the commit removed
> the cpu_idle_init and cpu_suspend ops.
> 
> It left me puzzled for quite some time. It seems that the cpuidle-psci is
> the preferred one and this has been the case for quite some time. The
> mentioned commit first appeared in v5.4.
> 
> [...]

Applied to arm64 (for-next/cpuidle), thanks!

[1/2] cpuidle: cpuidle-arm: remove arm64 support
      https://git.kernel.org/arm64/c/51280acad855
[2/2] arm64: cpuidle: remove generic cpuidle support
      https://git.kernel.org/arm64/c/471f80db9ef1

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev

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

end of thread, other threads:[~2022-06-23 19:41 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-29 18:13 [PATCH 0/2] arm64: remove generic ARM cpuidle support Michael Walle
2022-05-29 18:13 ` Michael Walle
2022-05-29 18:13 ` [PATCH 1/2] cpuidle: cpuidle-arm: remove arm64 support Michael Walle
2022-05-29 18:13   ` Michael Walle
2022-05-30 14:32   ` Sudeep Holla
2022-05-30 14:32     ` Sudeep Holla
2022-05-29 18:13 ` [PATCH 2/2] arm64: cpuidle: remove generic cpuidle support Michael Walle
2022-05-29 18:13   ` Michael Walle
2022-05-30 14:33   ` Sudeep Holla
2022-05-30 14:33     ` Sudeep Holla
2022-05-30 15:37 ` [PATCH 0/2] arm64: remove generic ARM " Daniel Lezcano
2022-05-30 15:37   ` Daniel Lezcano
2022-06-22 11:59 ` Michael Walle
2022-06-22 11:59   ` Michael Walle
2022-06-22 14:07   ` Sudeep Holla
2022-06-22 14:07     ` Sudeep Holla
2022-06-23 13:19     ` Will Deacon
2022-06-23 13:19       ` Will Deacon
2022-06-23 19:31 ` Will Deacon
2022-06-23 19:31   ` Will Deacon

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.