diff mbox series

ARM: dts: e60k02: fix power button

Message ID 20191111202959.24189-1-andreas@kemnade.info (mailing list archive)
State Mainlined
Commit b731fadff4899c97be9ff33f3f2bd379b7a6be75
Headers show
Series ARM: dts: e60k02: fix power button | expand

Commit Message

Andreas Kemnade Nov. 11, 2019, 8:29 p.m. UTC
The power button was only producing irqs, but no key events,
Forced power down with long key press works, so probably
only a short spike arrives at the SoC.
Further investigation shows that LDORTC2 is off after boot
of the vendor kernel. LDORTC2 is shared with a GPIO at the pmic
which probably transfers the button press to the SoC.
That regulator off at boot, so "regulator-boot-on" is definitively
wrong. So remove that.

Reported-by: H. Nikolaus Schaller <hns@goldelico.com>
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
 arch/arm/boot/dts/e60k02.dtsi | 5 -----
 1 file changed, 5 deletions(-)

Comments

H. Nikolaus Schaller Nov. 11, 2019, 9:05 p.m. UTC | #1
> Am 11.11.2019 um 21:29 schrieb Andreas Kemnade <andreas@kemnade.info>:
> 
> The power button was only producing irqs, but no key events,
> Forced power down with long key press works, so probably
> only a short spike arrives at the SoC.
> Further investigation shows that LDORTC2 is off after boot
> of the vendor kernel. LDORTC2 is shared with a GPIO at the pmic
> which probably transfers the button press to the SoC.
> That regulator off at boot, so "regulator-boot-on" is definitively
> wrong. So remove that.
> 
> Reported-by: H. Nikolaus Schaller <hns@goldelico.com>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
> arch/arm/boot/dts/e60k02.dtsi | 5 -----
> 1 file changed, 5 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
> index a0ade2ba7a21..33e02bd2b59d 100644
> --- a/arch/arm/boot/dts/e60k02.dtsi
> +++ b/arch/arm/boot/dts/e60k02.dtsi
> @@ -356,11 +356,6 @@
> 				regulator-name = "LDORTC1";
> 				regulator-boot-on;
> 			};
> -
> -			ldortc2_reg: LDORTC2 {
> -				regulator-name = "LDORTC2";
> -				regulator-boot-on;
> -			};
> 		};
> 	};
> };
> -- 
> 2.20.1
> 

Also:

Tested-by: H. Nikolaus Schaller <hns@goldelico.com>
Shawn Guo Dec. 4, 2019, 12:36 p.m. UTC | #2
On Mon, Nov 11, 2019 at 09:29:59PM +0100, Andreas Kemnade wrote:
> The power button was only producing irqs, but no key events,
> Forced power down with long key press works, so probably
> only a short spike arrives at the SoC.
> Further investigation shows that LDORTC2 is off after boot
> of the vendor kernel. LDORTC2 is shared with a GPIO at the pmic
> which probably transfers the button press to the SoC.
> That regulator off at boot, so "regulator-boot-on" is definitively
> wrong. So remove that.
> 
> Reported-by: H. Nikolaus Schaller <hns@goldelico.com>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>

Do you want this go into 5.5-rc as a fix?  In that case, we may need a
Fixes tag here.

Shawn

> ---
>  arch/arm/boot/dts/e60k02.dtsi | 5 -----
>  1 file changed, 5 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
> index a0ade2ba7a21..33e02bd2b59d 100644
> --- a/arch/arm/boot/dts/e60k02.dtsi
> +++ b/arch/arm/boot/dts/e60k02.dtsi
> @@ -356,11 +356,6 @@
>  				regulator-name = "LDORTC1";
>  				regulator-boot-on;
>  			};
> -
> -			ldortc2_reg: LDORTC2 {
> -				regulator-name = "LDORTC2";
> -				regulator-boot-on;
> -			};
>  		};
>  	};
>  };
> -- 
> 2.20.1
>
Andreas Kemnade Dec. 5, 2019, 6:06 a.m. UTC | #3
On Wed, 4 Dec 2019 20:36:47 +0800
Shawn Guo <shawnguo@kernel.org> wrote:

> On Mon, Nov 11, 2019 at 09:29:59PM +0100, Andreas Kemnade wrote:
> > The power button was only producing irqs, but no key events,
> > Forced power down with long key press works, so probably
> > only a short spike arrives at the SoC.
> > Further investigation shows that LDORTC2 is off after boot
> > of the vendor kernel. LDORTC2 is shared with a GPIO at the pmic
> > which probably transfers the button press to the SoC.
> > That regulator off at boot, so "regulator-boot-on" is definitively
> > wrong. So remove that.
> > 
> > Reported-by: H. Nikolaus Schaller <hns@goldelico.com>
> > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>  
> 
> Do you want this go into 5.5-rc as a fix?  In that case, we may need a
> Fixes tag here.
> 
well, now there is 
regulator: core: Let boot-on regulators be powered off
so the power button should work after regulator_late_cleanup()
is called but that is usually some time after userspace has started,
so it would be better to have that in. And of course dt should
correctly describe the hardware. That would be

Fixes: c100ea86e6ab ("ARM: dts: add Netronix E60K02 board common file")

BTW: I have not seen your 5.5 stuff in Linus' tree yet. Seems that Olof
has not sent his pull request yet or is there bigger trouble?

Regards,
Andreas
Shawn Guo Dec. 9, 2019, 12:56 a.m. UTC | #4
On Thu, Dec 05, 2019 at 07:06:12AM +0100, Andreas Kemnade wrote:
> On Wed, 4 Dec 2019 20:36:47 +0800
> Shawn Guo <shawnguo@kernel.org> wrote:
> 
> > On Mon, Nov 11, 2019 at 09:29:59PM +0100, Andreas Kemnade wrote:
> > > The power button was only producing irqs, but no key events,
> > > Forced power down with long key press works, so probably
> > > only a short spike arrives at the SoC.
> > > Further investigation shows that LDORTC2 is off after boot
> > > of the vendor kernel. LDORTC2 is shared with a GPIO at the pmic
> > > which probably transfers the button press to the SoC.
> > > That regulator off at boot, so "regulator-boot-on" is definitively
> > > wrong. So remove that.
> > > 
> > > Reported-by: H. Nikolaus Schaller <hns@goldelico.com>
> > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>  
> > 
> > Do you want this go into 5.5-rc as a fix?  In that case, we may need a
> > Fixes tag here.
> > 
> well, now there is 
> regulator: core: Let boot-on regulators be powered off
> so the power button should work after regulator_late_cleanup()
> is called but that is usually some time after userspace has started,
> so it would be better to have that in. And of course dt should
> correctly describe the hardware. That would be
> 
> Fixes: c100ea86e6ab ("ARM: dts: add Netronix E60K02 board common file")

Applied with the tag.

> 
> BTW: I have not seen your 5.5 stuff in Linus' tree yet. Seems that Olof
> has not sent his pull request yet or is there bigger trouble?

Now they are in v5.5-rc1.

Shawn
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
index a0ade2ba7a21..33e02bd2b59d 100644
--- a/arch/arm/boot/dts/e60k02.dtsi
+++ b/arch/arm/boot/dts/e60k02.dtsi
@@ -356,11 +356,6 @@ 
 				regulator-name = "LDORTC1";
 				regulator-boot-on;
 			};
-
-			ldortc2_reg: LDORTC2 {
-				regulator-name = "LDORTC2";
-				regulator-boot-on;
-			};
 		};
 	};
 };