Thread (59 messages) flat view 59 messages, 12 authors, 2020-09-29

Re: [patch 24/35] net: brcmfmac: Replace in_interrupt()

From: Arend Van Spriel <arend.vanspriel@broadcom.com>
Date: 2020-09-28 09:38:02
Also in: intel-wired-lan, linux-doc, linux-usb, linux-wireless, lkml

On 9/28/2020 11:19 AM, Ulf Hansson wrote:
On Mon, 28 Sep 2020 at 09:35, Arend Van Spriel
[off-list ref] wrote:
quoted
+ Uffe

On 9/27/2020 9:49 PM, Thomas Gleixner wrote:
quoted
@@ -85,7 +85,7 @@ static void brcmf_sdiod_ib_irqhandler(st

       brcmf_dbg(INTR, "IB intr triggered\n");

-     brcmf_sdio_isr(sdiodev->bus);
+     brcmf_sdio_isr(sdiodev->bus, false);
   }
Hi Uffe,

I assume the above code is okay, but want to confirm. Is the SDIO
interrupt guaranteed to be on a worker thread?
Correct.

As a matter of fact, the sdio irqs can be delivered through a couple
of different paths. The legacy (scheduled for removal), is from a
dedicated kthread. The more "modern" way is either from the context of
a threaded IRQ handler or via a workqueue.

However, there are also so-called out of band SDIO irqs, typically
routed via a separate GPIO line. This isn't managed by the MMC/SDIO
subsystem, but the SDIO functional driver itself.
In brcmfmac we indeed support the out-of-band interrupt. That scnenario 
is also taken care of in this patch. Thanks for the confirmation.

Regards,
Arend

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help