Skip to content

4k page brcmfmac brcmf_pcie_init_dmabuffer_for_device dma_alloc_coherent fails #47

@CathyKMeow

Description

@CathyKMeow

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

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions