Linux PCI subsystem development
 help / color / mirror / Atom feed
* [PATCH] wifi: brcmfmac: map msgbuf RX packet IDs bidirectional
@ 2026-10-21 17:22 Aditya Garg
  2026-10-21 17:26 ` sashiko-bot
  2026-10-21 17:54 ` Arend van Spriel
  0 siblings, 2 replies; 3+ messages in thread
From: Aditya Garg @ 2026-10-21 17:22 UTC (permalink / raw)
  To: Arend van Spriel, Johannes Berg
  Cc: iommu, Bjorn Helgaas, linux-pci, linux-wireless, Jason Perlow

From: Jason Perlow <jperlow@gmail.com>

Commit f0ba5fd51ff2 ("wifi: brcmfmac: Set DMA direction for msgbuf
packet IDs") maps the RX packet ID buffers DMA_FROM_DEVICE. The
BCM4364 firmware also reads posted RX buffers, so with VT-d
translation enabled every such read faults ("PTE Read access is not
set") and the firmware crashes and resets in a loop.

Map the RX pool DMA_BIDIRECTIONAL again, as before that commit. TX
keeps DMA_TO_DEVICE.

Fixes: f0ba5fd51ff2 ("wifi: brcmfmac: Set DMA direction for msgbuf packet IDs")
Cc: stable@vger.kernel.org
Signed-off-by: Jason Perlow <jperlow@gmail.com>
Signed-off-by: Aditya Garg <aditya.garg@linux.dev>
---
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c
index 069ba70..ff47d48 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c
@@ -1639,7 +1639,7 @@ int brcmf_proto_msgbuf_attach(struct brcmf_pub *drvr)
 	if (!msgbuf->tx_pktids)
 		goto fail;
 	msgbuf->rx_pktids = brcmf_msgbuf_init_pktids(NR_RX_PKTIDS,
-						     DMA_FROM_DEVICE);
+						     DMA_BIDIRECTIONAL);
 	if (!msgbuf->rx_pktids)
 		goto fail;
 
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] wifi: brcmfmac: map msgbuf RX packet IDs bidirectional
  2026-10-21 17:22 [PATCH] wifi: brcmfmac: map msgbuf RX packet IDs bidirectional Aditya Garg
@ 2026-10-21 17:26 ` sashiko-bot
  2026-10-21 17:54 ` Arend van Spriel
  1 sibling, 0 replies; 3+ messages in thread
From: sashiko-bot @ 2026-10-21 17:26 UTC (permalink / raw)
  To: Aditya Garg; +Cc: linux-pci

> From: Jason Perlow <jperlow@gmail.com>
> 
> Commit f0ba5fd51ff2 ("wifi: brcmfmac: Set DMA direction for msgbuf
> packet IDs") maps the RX packet ID buffers DMA_FROM_DEVICE. The
> BCM4364 firmware also reads posted RX buffers, so with VT-d
> translation enabled every such read faults ("PTE Read access is not
> set") and the firmware crashes and resets in a loop.
> 
> Map the RX pool DMA_BIDIRECTIONAL again, as before that commit. TX
> keeps DMA_TO_DEVICE.
> 
> Fixes: f0ba5fd51ff2 ("wifi: brcmfmac: Set DMA direction for msgbuf packet IDs")
> Cc: stable@vger.kernel.org
> Signed-off-by: Jason Perlow <jperlow@gmail.com>
> Signed-off-by: Aditya Garg <aditya.garg@linux.dev>

Sashiko has reviewed this patch and found no issues.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261021172238.10004-1-aditya.garg@linux.dev?part=1


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] wifi: brcmfmac: map msgbuf RX packet IDs bidirectional
  2026-10-21 17:22 [PATCH] wifi: brcmfmac: map msgbuf RX packet IDs bidirectional Aditya Garg
  2026-10-21 17:26 ` sashiko-bot
@ 2026-10-21 17:54 ` Arend van Spriel
  1 sibling, 0 replies; 3+ messages in thread
From: Arend van Spriel @ 2026-10-21 17:54 UTC (permalink / raw)
  To: Aditya Garg, Johannes Berg
  Cc: iommu, Bjorn Helgaas, linux-pci, linux-wireless, Jason Perlow

Op 21 oktober 2026 19:23:05 schreef Aditya Garg <aditya.garg@linux.dev>:

> From: Jason Perlow <jperlow@gmail.com>
>
> Commit f0ba5fd51ff2 ("wifi: brcmfmac: Set DMA direction for msgbuf
> packet IDs") maps the RX packet ID buffers DMA_FROM_DEVICE. The
> BCM4364 firmware also reads posted RX buffers, so with VT-d
> translation enabled every such read faults ("PTE Read access is not
> set") and the firmware crashes and resets in a loop.
>
> Map the RX pool DMA_BIDIRECTIONAL again, as before that commit. TX
> keeps DMA_TO_DEVICE.
>
> Fixes: f0ba5fd51ff2 ("wifi: brcmfmac: Set DMA direction for msgbuf packet IDs")
> Cc: stable@vger.kernel.org

Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com>

> Signed-off-by: Jason Perlow <jperlow@gmail.com>
> Signed-off-by: Aditya Garg <aditya.garg@linux.dev>
> ---
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-10-21 17:55 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-21 17:22 [PATCH] wifi: brcmfmac: map msgbuf RX packet IDs bidirectional Aditya Garg
2026-10-21 17:26 ` sashiko-bot
2026-10-21 17:54 ` Arend van Spriel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox