Message ID | 1457730000-11868-1-git-send-email-zombah@gmail.com |
---|---|
State | Deferred |
Headers | show |
Hi Micha, Am Samstag, 12. März 2016, 00:00:00 CET schrieb Misha Komarovskiy: > Add DT property to tell the regulator that it should provide > the pm_power_off() implementation. This fix "shutdown" issue > on this device. > > Signed-off-by: Misha Komarovskiy <zombah@gmail.com> > --- > > Tested on current mainline version, ac100 models 116 and 117, > successful rate of "shutdown" increased from 10% to 90%. > > arch/arm/boot/dts/tegra20-paz00.dts | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/arm/boot/dts/tegra20-paz00.dts > b/arch/arm/boot/dts/tegra20-paz00.dts index ed7e100..c82e3ae 100644 > --- a/arch/arm/boot/dts/tegra20-paz00.dts > +++ b/arch/arm/boot/dts/tegra20-paz00.dts > @@ -316,6 +316,8 @@ > #gpio-cells = <2>; > gpio-controller; > > + ti,system-power-controller; > + > sys-supply = <&p5valw_reg>; > vin-sm0-supply = <&sys_reg>; > vin-sm1-supply = <&sys_reg>; I think this is the wrong fix. The power_off hook is already occupied by nvec. So either the tps or nvec is responsible for shutting down the system. AFAIR, nvec has some hard wired connection to the tps for doing this, so in the end, it will shut down (but I can't find it now in the schematics). See paz00- diag.c in the original sources on how the system is beeing shut down. In any case, we can only have one power_off handler. Either via tps or nvec, not both. Marc
Hello Marc, On Sat, Mar 12, 2016 at 4:34 PM, Marc Dietrich <marvin24@gmx.de> wrote: > Hi Micha, > > Am Samstag, 12. März 2016, 00:00:00 CET schrieb Misha Komarovskiy: >> Add DT property to tell the regulator that it should provide >> the pm_power_off() implementation. This fix "shutdown" issue >> on this device. >> >> Signed-off-by: Misha Komarovskiy <zombah@gmail.com> >> --- >> >> Tested on current mainline version, ac100 models 116 and 117, >> successful rate of "shutdown" increased from 10% to 90%. >> >> arch/arm/boot/dts/tegra20-paz00.dts | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/arch/arm/boot/dts/tegra20-paz00.dts >> b/arch/arm/boot/dts/tegra20-paz00.dts index ed7e100..c82e3ae 100644 >> --- a/arch/arm/boot/dts/tegra20-paz00.dts >> +++ b/arch/arm/boot/dts/tegra20-paz00.dts >> @@ -316,6 +316,8 @@ >> #gpio-cells = <2>; >> gpio-controller; >> >> + ti,system-power-controller; >> + >> sys-supply = <&p5valw_reg>; >> vin-sm0-supply = <&sys_reg>; >> vin-sm1-supply = <&sys_reg>; > > I think this is the wrong fix. The power_off hook is already occupied by nvec. > So either the tps or nvec is responsible for shutting down the system. AFAIR, > nvec has some hard wired connection to the tps for doing this, so in the end, > it will shut down (but I can't find it now in the schematics). See paz00- > diag.c in the original sources on how the system is beeing shut down. > > In any case, we can only have one power_off handler. Either via tps or nvec, > not both. Currently shutdown work very poor, lucky if i have one clean shutdown of ten tries. With power_off handler by tps driver i have eight clean shutdowns of ten tries. Now it is possible to boot paz00 without nvec at all, in comparison to downstream kernels. If such solution acceptable, i can test with disabled nvec power_off hadler and compare results. > > Marc
diff --git a/arch/arm/boot/dts/tegra20-paz00.dts b/arch/arm/boot/dts/tegra20-paz00.dts index ed7e100..c82e3ae 100644 --- a/arch/arm/boot/dts/tegra20-paz00.dts +++ b/arch/arm/boot/dts/tegra20-paz00.dts @@ -316,6 +316,8 @@ #gpio-cells = <2>; gpio-controller; + ti,system-power-controller; + sys-supply = <&p5valw_reg>; vin-sm0-supply = <&sys_reg>; vin-sm1-supply = <&sys_reg>;
Add DT property to tell the regulator that it should provide the pm_power_off() implementation. This fix "shutdown" issue on this device. Signed-off-by: Misha Komarovskiy <zombah@gmail.com> --- Tested on current mainline version, ac100 models 116 and 117, successful rate of "shutdown" increased from 10% to 90%. arch/arm/boot/dts/tegra20-paz00.dts | 2 ++ 1 file changed, 2 insertions(+)