RE: [EXTERNAL] Re: [PATCH] arm: dts: am437x-sk-evm: add wilink8 support

From: Reizer, Eyal
Date: Sun May 06 2018 - 03:45:48 EST


>
> * Reizer, Eyal <eyalr@xxxxxx> [180503 06:43]:
> > >
> > > * Eyal Reizer <eyalreizer@xxxxxxxxx> [180501 00:26]:
> > > > enable mmc3 used for wlan and uart1 used for bluetooth
> > > > configure the gpios used for wlan and bluetooth controls
> > > > add fixed voltage regulator used for wlan power control
> > > ...
> > > > / {
> > > > model = "TI AM437x SK EVM";
> > > > @@ -158,6 +159,22 @@
> > > > };
> > > > };
> > > > };
> > > > +
> > > > + vmmcwl_fixed: fixedregulator-mmcwl {
> > > > + /*
> > > > + * WL_EN is not SDIO standard compliant. It is an out of band
> > > > + * signal and hard to be dealt with in a standard way by the
> > > > + * SDIO core driver.
> > > > + * So modelling the WL_EN line as a regulator was a natural
> > > > + * choice as the MMC core already deals with MMC supplies.
> > > > + */
> > > > + compatible = "regulator-fixed";
> > > > + regulator-name = "vmmcwl_fixed";
> > > > + regulator-min-microvolt = <1800000>;
> > > > + regulator-max-microvolt = <1800000>;
> > > > + gpio = <&gpio4 8 GPIO_ACTIVE_HIGH>;
> > > > + enable-active-high;
> > > > + };
> > > > };
> > >
> > > Interesting that it needs much longer delay here compared to the
> > > earlier?
> >
> > Where do you see a delay in here?
> > There is no startup-delay-us value used in this patch.
>
> Oops sorry, I misread the voltage above as the startup-delay-us
> value :)
>
No issue :)

> > > BTW, I do have a patch in work to add pwrseq support for wlcore that
> > > allows leaving out the regulator here. It still needs a bit more
> > > work though.
> > >
> > > And I also have a series in work to make wlcore use runtime PM that
> > > needs even more work, just FYI to avoid any duplicate work.
> > >
> > > Hmm you don't happen to have a patch series somewhere making
> > > wlcore use the SDIO dat lien interrupt?
> > wilink has always used out of band interrupt (using wlan_irq gpio).
> > in-band interrupts was not supported.
> > See section 10.5.2 in this the wl18xx hardware integration guide:
> > http://www.ti.com/lit/ug/swru437/swru437.pdf
>
> Hmm yeah I've been wondering about that. Why not follow the SDIO
> standard here though? Do you have links to documentation explaining
> that?
>
I will try to see what I can find out and why it has always been used only
With out-of band interrupts and whether there is a real hardware
Limitation behind it .
In the past also the omap-hsmmc driver was not really supporting in-band
sdio interrupt out of the box.
Not sure what is the state of it tofday.

> > > I think we should use that when idle rather than the (edge) gpio
> > > interrupt as the SDIO dat interrupt is level sensitive and wired
> > > to the always on gpio bank for most SDIO controller instances.
> > > On runtime PM wakeup, there's no status anywhere to been with the
> > > GPIO edge interrupt.
> > >
> > I agree that it would have been better, especially for cases such as wake
> > On wlan, but again, in-band interrupt was something that was talked
> > about way back but it was never implemented.
>
> I think we can have both if performance is the reason for the
> out of band interrupt. We could still use SDIO dat line interrupt
> during idle for wake-up events.

Correct, assuming we can make in-band interrupt work with wilink8.

Best Regards,
Eyal