forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 114
Closed
Description
4k page brcmfmac brcmf_pcie_init_dmabuffer_for_device dma_alloc_coherent fails
Device model
MacBook Pro 14-inch, 2021, M1 Pro, 10 core CPU, 16 GiB memory
macOS version
12.3.1
Kernel log
4k:
$ sudo dmesg | grep -E 'brcmfmac|jrydclleyafhlwt'
[ 1.189418] usbcore: registered new interface driver brcmfmac
[ 1.189690] brcmfmac 0000:01:00.0: Adding to iommu group 3
[ 1.189695] brcmfmac 0000:01:00.0: Removing from iommu group 3
[ 1.189713] brcmfmac 0000:01:00.0: enabling device (0000 -> 0002)
[ 1.298215] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac4387c2-pcie for chip BCM4387/7
[ 1.298966] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-TPHN-u-4.7-X2.bin failed with error -2
[ 1.299976] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-TPHN-u-4.7.bin failed with error -2
[ 1.299999] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-TPHN-u.bin failed with error -2
[ 1.300014] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-TPHN.bin failed with error -2
[ 1.300058] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-X2.bin failed with error -2
[ 2.138005] jrydclleyafhlwt CCCCCCCCCCCCCC 2560 0
[ 2.138045] jrydclleyafhlwt AAAAAAAAAAAAAA 2560
[ 2.138074] brcmfmac 0000:01:00.0: brcmf_pcie_init_ringbuffers: Allocating ring buffers failed
$ sudo iwctl station list
Devices in Station Mode
--------------------------------------------------------------------------------
Name State Scanning
--------------------------------------------------------------------------------
No devices in Station mode available.
16k:
$ sudo dmesg | grep -E 'brcmfmac|jrydclleyafhlwt'
[ 1.142057] usbcore: registered new interface driver brcmfmac
[ 1.142515] brcmfmac 0000:01:00.0: Adding to iommu group 4
[ 1.142558] brcmfmac 0000:01:00.0: enabling device (0000 -> 0002)
[ 1.257236] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac4387c2-pcie for chip BCM4387/7
[ 1.257974] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-TPHN-u-4.7-X2.bin failed with error -2
[ 1.257994] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-TPHN-u-4.7.bin failed with error -2
[ 1.258008] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-TPHN-u.bin failed with error -2
[ 1.258023] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-TPHN.bin failed with error -2
[ 1.258058] brcmfmac 0000:01:00.0: Direct firmware load for brcm/brcmfmac4387c2-pcie.apple,maldives-X2.bin failed with error -2
[ 2.022143] jrydclleyafhlwt CCCCCCCCCCCCCC 2560 ffff800009fb4000
[ 2.022182] jrydclleyafhlwt BBBBBBBBBBBBBB 2560
[ 2.022214] jrydclleyafhlwt CCCCCCCCCCCCCC 32768 ffff80000ab90000
[ 2.022247] jrydclleyafhlwt BBBBBBBBBBBBBB 32768
[ 2.022279] jrydclleyafhlwt CCCCCCCCCCCCCC 1536 ffff80000a478000
[ 2.022313] jrydclleyafhlwt BBBBBBBBBBBBBB 1536
[ 2.022344] jrydclleyafhlwt CCCCCCCCCCCCCC 24576 ffff80000abb8000
[ 2.022377] jrydclleyafhlwt BBBBBBBBBBBBBB 24576
[ 2.022410] jrydclleyafhlwt CCCCCCCCCCCCCC 40960 ffff80000abc4000
[ 2.022443] jrydclleyafhlwt BBBBBBBBBBBBBB 40960
[ 2.083446] brcmfmac: brcmf_c_process_txcap_blob: TxCap blob found, loading
[ 2.084333] brcmfmac: brcmf_c_process_cal_blob: Calibration blob provided by platform, loading
[ 2.094411] brcmfmac: brcmf_c_preinit_dcmds: Fi
$ uname -a
Linux localhost 5.19.0-asahi-5-2-4kpage-ARCH #2 SMP PREEMPT_DYNAMIC Mon, 22 Aug 2022 00:00:00 +0000 aarch64 GNU/Linux
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
@@ -1099,6 +1099,8 @@ brcmf_pcie_init_dmabuffer_for_device(struct brcmf_pciedev_info *devinfo,
ring = dma_alloc_coherent(&devinfo->pdev->dev, size, dma_handle,
GFP_KERNEL);
+
+ printk(KERN_EMERG "jrydclleyafhlwt CCCCCCCCCCCCCC %d %lx\n", size, ring);
if (!ring)
return NULL;
@@ -1131,8 +1133,11 @@ brcmf_pcie_alloc_dma_and_ring(struct brcmf_pciedev_info *devinfo, u32 ring_id,
dma_buf = brcmf_pcie_init_dmabuffer_for_device(devinfo, size,
tcm_ring_phys_addr + BRCMF_RING_MEM_BASE_ADDR_OFFSET,
&dma_handle);
- if (!dma_buf)
+ if (!dma_buf) {
+ printk(KERN_EMERG "jrydclleyafhlwt AAAAAAAAAAAAAA %d\n", size);
return NULL;
+ }
+ printk(KERN_EMERG "jrydclleyafhlwt BBBBBBBBBBBBBB %d\n", size);
addr = tcm_ring_phys_addr + BRCMF_RING_MAX_ITEM_OFFSET;
brcmf_pcie_write_tcm16(devinfo, addr, brcmf_ring_max_item[ring_id]);
`
Metadata
Metadata
Assignees
Labels
No labels