[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a4dd3009f0f5492d8756f42c11590423@ti.com>
Date: Mon, 7 May 2018 06:55:03 +0000
From: "Reizer, Eyal" <eyalr@...com>
To: Tony Lindgren <tony@...mide.com>
CC: Eyal Reizer <eyalreizer@...il.com>,
"bcousson@...libre.com" <bcousson@...libre.com>,
"robh+dt@...nel.org" <robh+dt@...nel.org>,
"mark.rutland@....com" <mark.rutland@....com>,
"linux-omap@...r.kernel.org" <linux-omap@...r.kernel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"Loewy, Chen" <c-loewy@...com>
Subject: RE: [EXTERNAL] Re: [PATCH] arm: dts: am437x-sk-evm: add wilink8
support
Hi Tony,
>
> Yeah my guess is that the reason for the separate GPIO interrupt was
> that on omap3 we did not have SDIO interrupt working for years. This was
> because of the issues related to padconf interrupts for off mode.
>
> We now have Linux generic wakeirq support working with SDIO and it has
> been confirmed to work also for off mode with mwifiex at least. So
> there should be no reason to not also use the SDIO interrupt.
>
There is more to this than just the padconf.
Using in-band interrupt instead of the out of band one requires
Supporting a feature called "Asynchronous interrupts in 4Bit mode"
Which is part of SDIO 3.0 spec:
https://www.sdcard.org/downloads/pls/pdf/index.php?p=PartE1_SDIO_Simplified_Specification_Ver3.00.jpg&f=PartE1_SDIO_Simplified_Specification_Ver3.00.pdf&e=EN_SSE1
Take a look at page 41 at the bottom part of the table.
Wilink8 supports this feature but AFAIK this support is still not part of the
mmc/sdio core in the Linux kernel.
If we want wilink8 to trigger a host wakeup using the in-band interrupt instead
Of the wlan_irq pin we would need to enable/use this feature.
I did use it internally in the past and was able to patch the Ubuntu kernel
(3.5.0 at that time) to use wilink8 in a standard SD Card slot of an Ubuntu Laptop
while removing the use of wlan_irq pin completely.
However this was an experimental patch set written by a third party
that was not up-steamtable at that time.
I do have this patch set somewhere...
It is similar to the following patch which is not upstream as well for some reason:
https://gitlab.com/k2wl/g2_kernel/commit/5c4970fdaa50422d7ea7220efa20fb35148a4bca
It is not the only patch needed, there are a couple of additional patches needed
for fully using it from driver.
I did check latest Linux-next and don't see this support there. Not sure why.
Best Regards,
Eyal
Powered by blists - more mailing lists