2018-12-30 11:39:06

by Jan Kiszka

[permalink] [raw]
Subject: [PATCH] arm64: dts: hikey: Give wifi some time after power-on

From: Jan Kiszka <[email protected]>

Somewhere along recent changes to power control of the wl1835, power-on
became very unreliable on the hikey, failing like this:

wl1271_sdio: probe of mmc2:0001:1 failed with error -16
wl1271_sdio: probe of mmc2:0001:2 failed with error -16

After playing with some dt parameters and comparing to other users of
this chip, it turned out we need some power-on delay to make things
stable again. In contrast to those other users which define 200 ms, the
hikey is already very happy with 1 ms.

Signed-off-by: Jan Kiszka <[email protected]>
---

Tested with 4.19 and linus/master.

arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
index f4964bee6a1a..1e771bf201b9 100644
--- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
+++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
@@ -118,6 +118,7 @@
reset-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
clocks = <&pmic>;
clock-names = "ext_clock";
+ post-power-on-delay-ms = <1>;
power-off-delay-us = <10>;
};

--
2.16.4


2019-01-02 22:21:20

by John Stultz

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: hikey: Give wifi some time after power-on

Adding a few folks to cc from the thread here:
https://patchwork.kernel.org/patch/10734021/

As this sounds like a very similar issue.
thanks
-john

On Sun, Dec 30, 2018 at 3:38 AM Jan Kiszka <[email protected]> wrote:
>
> From: Jan Kiszka <[email protected]>
>
> Somewhere along recent changes to power control of the wl1835, power-on
> became very unreliable on the hikey, failing like this:
>
> wl1271_sdio: probe of mmc2:0001:1 failed with error -16
> wl1271_sdio: probe of mmc2:0001:2 failed with error -16
>
> After playing with some dt parameters and comparing to other users of
> this chip, it turned out we need some power-on delay to make things
> stable again. In contrast to those other users which define 200 ms, the
> hikey is already very happy with 1 ms.
>
> Signed-off-by: Jan Kiszka <[email protected]>
> ---
>
> Tested with 4.19 and linus/master.
>
> arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
> b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
> index f4964bee6a1a..1e771bf201b9 100644
> --- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
> +++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
> @@ -118,6 +118,7 @@
> reset-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
> clocks = <&pmic>;
> clock-names = "ext_clock";
> + post-power-on-delay-ms = <1>;
> power-off-delay-us = <10>;
> };
>
> --
> 2.16.4

2019-01-03 21:33:18

by Ulf Hansson

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: hikey: Give wifi some time after power-on

On Wed, 2 Jan 2019 at 23:21, John Stultz <[email protected]> wrote:
>
> Adding a few folks to cc from the thread here:
> https://patchwork.kernel.org/patch/10734021/
>
> As this sounds like a very similar issue.
> thanks
> -john

John, thanks for looping me in.

>
> On Sun, Dec 30, 2018 at 3:38 AM Jan Kiszka <[email protected]> wrote:
> >
> > From: Jan Kiszka <[email protected]>
> >
> > Somewhere along recent changes to power control of the wl1835, power-on
> > became very unreliable on the hikey, failing like this:
> >
> > wl1271_sdio: probe of mmc2:0001:1 failed with error -16
> > wl1271_sdio: probe of mmc2:0001:2 failed with error -16
> >
> > After playing with some dt parameters and comparing to other users of
> > this chip, it turned out we need some power-on delay to make things
> > stable again. In contrast to those other users which define 200 ms, the
> > hikey is already very happy with 1 ms.

According to the discussions we had so far, this doesn't sound like
the correct solution.

I am intending to post patch soon, however, I am not sure exactly what
solution to pick yet. I will keep you on cc - and of course I
appreciate if you could help to test.

Kind regards
Uffe

> >
> > Signed-off-by: Jan Kiszka <[email protected]>
> > ---
> >
> > Tested with 4.19 and linus/master.
> >
> > arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
> > b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
> > index f4964bee6a1a..1e771bf201b9 100644
> > --- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
> > +++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
> > @@ -118,6 +118,7 @@
> > reset-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
> > clocks = <&pmic>;
> > clock-names = "ext_clock";
> > + post-power-on-delay-ms = <1>;
> > power-off-delay-us = <10>;
> > };
> >
> > --
> > 2.16.4

2019-01-06 09:53:42

by Jan Kiszka

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: hikey: Give wifi some time after power-on

On 03.01.19 22:32, Ulf Hansson wrote:
> On Wed, 2 Jan 2019 at 23:21, John Stultz <[email protected]> wrote:
>>
>> Adding a few folks to cc from the thread here:
>> https://patchwork.kernel.org/patch/10734021/
>>
>> As this sounds like a very similar issue.
>> thanks
>> -john
>
> John, thanks for looping me in.
>
>>
>> On Sun, Dec 30, 2018 at 3:38 AM Jan Kiszka <[email protected]> wrote:
>>>
>>> From: Jan Kiszka <[email protected]>
>>>
>>> Somewhere along recent changes to power control of the wl1835, power-on
>>> became very unreliable on the hikey, failing like this:
>>>
>>> wl1271_sdio: probe of mmc2:0001:1 failed with error -16
>>> wl1271_sdio: probe of mmc2:0001:2 failed with error -16
>>>
>>> After playing with some dt parameters and comparing to other users of
>>> this chip, it turned out we need some power-on delay to make things
>>> stable again. In contrast to those other users which define 200 ms, the
>>> hikey is already very happy with 1 ms.
>
> According to the discussions we had so far, this doesn't sound like
> the correct solution.
>
> I am intending to post patch soon, however, I am not sure exactly what
> solution to pick yet. I will keep you on cc - and of course I
> appreciate if you could help to test.
>

FWIW, the Ultra96 is also affected. Here I worked around it by using a 10 ms
power-on delay. The original workaround from the other thread did not help.
Looking forward to the proper fix now!

Jan

> Kind regards
> Uffe
>
>>>
>>> Signed-off-by: Jan Kiszka <[email protected]>
>>> ---
>>>
>>> Tested with 4.19 and linus/master.
>>>
>>> arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
>>> b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
>>> index f4964bee6a1a..1e771bf201b9 100644
>>> --- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
>>> +++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
>>> @@ -118,6 +118,7 @@
>>> reset-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
>>> clocks = <&pmic>;
>>> clock-names = "ext_clock";
>>> + post-power-on-delay-ms = <1>;
>>> power-off-delay-us = <10>;
>>> };
>>>
>>> --
>>> 2.16.4


2019-01-15 08:10:49

by Jan Kiszka

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: hikey: Give wifi some time after power-on

On 06.01.19 10:53, Jan Kiszka wrote:
> On 03.01.19 22:32, Ulf Hansson wrote:
>> On Wed, 2 Jan 2019 at 23:21, John Stultz <[email protected]> wrote:
>>>
>>> Adding a few folks to cc from the thread here:
>>> https://patchwork.kernel.org/patch/10734021/
>>>
>>> As this sounds like a very similar issue.
>>> thanks
>>> -john
>>
>> John, thanks for looping me in.
>>
>>>
>>> On Sun, Dec 30, 2018 at 3:38 AM Jan Kiszka <[email protected]> wrote:
>>>>
>>>> From: Jan Kiszka <[email protected]>
>>>>
>>>> Somewhere along recent changes to power control of the wl1835, power-on
>>>> became very unreliable on the hikey, failing like this:
>>>>
>>>> wl1271_sdio: probe of mmc2:0001:1 failed with error -16
>>>> wl1271_sdio: probe of mmc2:0001:2 failed with error -16
>>>>
>>>> After playing with some dt parameters and comparing to other users of
>>>> this chip, it turned out we need some power-on delay to make things
>>>> stable again. In contrast to those other users which define 200 ms, the
>>>> hikey is already very happy with 1 ms.
>>
>> According to the discussions we had so far, this doesn't sound like
>> the correct solution.
>>
>> I am intending to post patch soon, however, I am not sure exactly what
>> solution to pick yet. I will keep you on cc - and of course I
>> appreciate if you could help to test.
>>
>
> FWIW, the Ultra96 is also affected. Here I worked around it by using a 10 ms
> power-on delay. The original workaround from the other thread did not help.
> Looking forward to the proper fix now!
>

Any news on this regression?

Jan

2019-01-15 08:13:46

by Ulf Hansson

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: hikey: Give wifi some time after power-on

On Tue, 15 Jan 2019 at 09:10, Jan Kiszka <[email protected]> wrote:
>
> On 06.01.19 10:53, Jan Kiszka wrote:
> > On 03.01.19 22:32, Ulf Hansson wrote:
> >> On Wed, 2 Jan 2019 at 23:21, John Stultz <[email protected]> wrote:
> >>>
> >>> Adding a few folks to cc from the thread here:
> >>> https://patchwork.kernel.org/patch/10734021/
> >>>
> >>> As this sounds like a very similar issue.
> >>> thanks
> >>> -john
> >>
> >> John, thanks for looping me in.
> >>
> >>>
> >>> On Sun, Dec 30, 2018 at 3:38 AM Jan Kiszka <[email protected]> wrote:
> >>>>
> >>>> From: Jan Kiszka <[email protected]>
> >>>>
> >>>> Somewhere along recent changes to power control of the wl1835, power-on
> >>>> became very unreliable on the hikey, failing like this:
> >>>>
> >>>> wl1271_sdio: probe of mmc2:0001:1 failed with error -16
> >>>> wl1271_sdio: probe of mmc2:0001:2 failed with error -16
> >>>>
> >>>> After playing with some dt parameters and comparing to other users of
> >>>> this chip, it turned out we need some power-on delay to make things
> >>>> stable again. In contrast to those other users which define 200 ms, the
> >>>> hikey is already very happy with 1 ms.
> >>
> >> According to the discussions we had so far, this doesn't sound like
> >> the correct solution.
> >>
> >> I am intending to post patch soon, however, I am not sure exactly what
> >> solution to pick yet. I will keep you on cc - and of course I
> >> appreciate if you could help to test.
> >>
> >
> > FWIW, the Ultra96 is also affected. Here I worked around it by using a 10 ms
> > power-on delay. The original workaround from the other thread did not help.
> > Looking forward to the proper fix now!
> >
>
> Any news on this regression?

I will post a (or two) patch during the day.

Kind regards
Uffe