[BPI-R64] OpenWRT kernel 5.4.40 running from eMMC

Sorry. Try now again.

Thank you but I will try it tomorrow.

You have fixed emmc-issue on r64? If your image boots completely from emmc you cannot disable emmc in uboot…

Im not disabling anything in u-boot. Im using yours precompiled.

Running from ext4 do not need block2mtd and that seems to have an issue. My last investigation about this described here:

http://forum.banana-pi.org/t/bpi-r64-quick-start-boot-from-emmc/9809/97?u=niebieski20

I can confirm that eMMC works fine in openwrt with kernel 5.4 and without block2mtd. I’m using old emmc u-boot (2014-04, iirc).

However, your armbian build from [BPI-R64] new image: debian buster for emmc/sd has issue mentioned - I/O error on mount or any action with /dev/mmcblk0

Not sure maybe it’s two different issues

BPI-R64 + Armbian - this armbian build with kernel 4.9 works.

BTW, did you tested internal mt7622 Wi-Fi? It works only for several hours for me, then clients stops connecting until reboot. SSID is visible and clients already connected works normally.

Yes I spotted that too now. I did not run long term tests before. That is a clear OpenWRT package with one small patch on EEPROM. Mt76 git is updating every around month so maybe someone also spot this issue and already fixed.

https://github.com/openwrt/mt76

maybe…i wonder why i’m not stumbling on this issue while creating the image…afair the original one was for emmc…maybe it depends on newer uboot? Afair emmc image was using old uboot,sd-image was created later…maybe with newer uboot… @kosyak which one have you tested (and get emmc-issue)?

Hi. I have the R64 v1.1 board with the BPI mt7615 IPA v1.0 PCIe card installed in CN25 slot

I followed the Readme.md instructions posted at https://github.com/m2LiJu/BPI_R64_OpenWRT

OpenWRT boots up successfully, but I consistently get an error from the mt7615e driver due to a timeout:

[ 33.793354] mt7615e 0000:01:00.0: Failed to get patch semaphore

As a result the firmware does not get loaded and the mt7615 is unfunctional. This was happening even the the 4.19-based Openwrt build that I had built earlier using these instructions: [BPI-R64] loading OpenWRT built files into the board

When using the LEDE version from BPI (http://wiki.banana-pi.org/BPI-R64_%2B_MT7615_function_test), the mt7615 card is fully functional.

So I think it is not any hardware issue with the PCIe card itself.

Upon debugging deeper in the mt76 driver code, I have tentatively concluded that

mt76_mcu_get_response(dev, expires)

function returns NULL because

wait_event_timeout(dev->mcu.wait,
			   (!skb_queue_empty(&dev->mcu.res_q) ||
			    test_bit(MT76_MCU_RESET, &dev->phy.state)),
			   timeout);

times out. The phy.state is 0x1 and mcu.res_q is empty.

Does anyone have any clues or suggestions?

As we have same problem with mt7622 internal wifi (also handled by mt7615 driver) i can give you my current knowledge…

It seems to be caused by bluetooth/rfkill. For mt7622 we defined a soft depency…see https://wiki.fw-web.de/doku.php?id=en:bpi-r64:wifi#internal_wifi maybe this works in similar way for mt7615

Can you attach boot log?

@Mbk_Kamble both mt7622 and mt7615e work fine on my openwrt. please check your wmac node in dts file firstly.

Do you experience the same issue with wifi, described here http://forum.banana-pi.org/t/bpi-r64-openwrt-kernel-5-4-40-running-from-emmc/11087/8?

I think it’s not related to wifi. The issue you guys describe here is more like a MT7622 switch broken issue on kernel 5.4 :sleepy:. Can you try to use OpenWRT + 4.19 test that again?

I’m constantly getting the same issue: a mt7615e 0000:01:00.0: Failed to get patch semaphore error. Here’s how boot log looks like.

reading bananapi/bpi-r64/linux/uImage
3265176 bytes read in 68 ms (45.8 MiB/s)
reading bananapi/bpi-r64/linux/dtb/image-mt7622-bananapi-bpi-r64.dtb
24877 bytes read in 7 ms (3.4 MiB/s)
bootm flag=0, states=70f
## Loading kernel from FIT Image at 44000000 ...
   Using 'config@1' configuration
   Trying 'kernel@1' kernel subimage
     Description:  ARM64 OpenWrt Linux-5.4.39
     Type:         Kernel Image
     Compression:  lzma compressed
     Data Start:   0x440000e8
     Data Size:    3238412 Bytes = 3.1 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x41080000
     Entry Point:  0x41080000
     Hash algo:    crc32
     Hash value:   b8baf594
     Hash algo:    sha1
     Hash value:   01c05230b7ca622b4276fe320ca6d62ba0aba352
   Verifying Hash Integrity ... crc32+ sha1+ OK
## Flattened Device Tree blob at 47000000
   Booting using the fdt blob at 0x47000000
   Uncompressing Kernel Image ... OK
   Loading Device Tree to 6bff6000, end 6bfff12c ... OK

Starting kernel ...

[ATF][    26.274057]save kernel info
[ATF][    26.277258]Kernel_EL2
[ATF][    26.280014]Kernel is 64Bit
[ATF][    26.283202]pc=0x41080000, r0=0x6bff6000, r1=0x0
INFO:    BL3-1: Preparing for EL3 exit to normal world, Kernel
INFO:    BL3-1: Next image address = 0x41080000
INFO:    BL3-1: Next image spsr = 0x3c9
[ATF][    26.301468]el3_exit
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.4.39 ([email protected]) (gcc version 8.4.0 (OpenWrt GCC 8.4.0 r13203-02656caa7b)) #0 SMP Fri May 8 18:15:0
[    0.000000] Machine model: Bananapi BPI-R64
[    0.000000] On node 0 totalpages: 262096
[    0.000000]   DMA32 zone: 4096 pages used for memmap
[    0.000000]   DMA32 zone: 0 pages reserved
[    0.000000]   DMA32 zone: 262096 pages, LIFO batch:63
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv0.2 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: Trusted OS migration not required
[    0.000000] percpu: Embedded 20 pages/cpu s43608 r8192 d30120 u81920
[    0.000000] pcpu-alloc: s43608 r8192 d30120 u81920 alloc=20*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: kernel page table isolation disabled by kernel configuration
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 258000
[    0.000000] Kernel command line: board=bpi-r64 console=ttyS0,115200n1 earlyprintk root=/dev/mmcblk0p2 rootfstype=ext4 rootwait service=linu2
[    0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 1018396K/1048384K available (6590K kernel code, 432K rwdata, 1896K rodata, 448K init, 285K bss, 29988K reserved, 0K cma)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     CONFIG_RCU_FANOUT set to non-default value of 32.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GIC: GICv2 detected, but range too small and irqchip.gicv2_force_probe not set
[    0.000000] random: get_random_bytes called from start_kernel+0x2d4/0x42c with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 12.50MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049cda, max_idle_ns: 440795202628 ns
[    0.000003] sched_clock: 56 bits at 12MHz, resolution 80ns, wraps every 4398046511080ns
[    0.000166] Calibrating delay loop (skipped), value calculated using timer frequency.. 25.00 BogoMIPS (lpj=50000)
[    0.000173] pid_max: default: 32768 minimum: 301
[    0.000261] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.000272] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.001153] ASID allocator initialised with 65536 entries
[    0.001202] rcu: Hierarchical SRCU implementation.
[    0.001465] smp: Bringing up secondary CPUs ...
[    0.001788] Detected VIPT I-cache on CPU1
[    0.001824] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.001878] smp: Brought up 1 node, 2 CPUs
[    0.001884] SMP: Total of 2 processors activated.
[    0.001888] CPU features: detected: 32-bit EL0 Support
[    0.001892] CPU features: detected: CRC32 instructions
[    0.001994] CPU: All CPU(s) started at EL2
[    0.002003] alternatives: patching kernel code
[    0.005230] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.005243] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.005333] pinctrl core: initialized pinctrl subsystem
[    0.005757] NET: Registered protocol family 16
[    0.006042] DMA: preallocated 256 KiB pool for atomic allocations
[    0.017011] GPIO line 499 (asm_sel) hogged as output/high
[    0.029557] SCSI subsystem initialized
[    0.029683] libata version 3.00 loaded.
[    0.029803] usbcore: registered new interface driver usbfs
[    0.029828] usbcore: registered new interface driver hub
[    0.029854] usbcore: registered new device driver usb
[    0.030483] Bluetooth: Core ver 2.22
[    0.030503] NET: Registered protocol family 31
[    0.030506] Bluetooth: HCI device and connection manager initialized
[    0.030513] Bluetooth: HCI socket layer initialized
[    0.030518] Bluetooth: L2CAP socket layer initialized
[    0.030528] Bluetooth: SCO socket layer initialized
[    0.030779] clocksource: Switched to clocksource arch_sys_counter
[    0.031244] thermal_sys: Registered thermal governor 'fair_share'
[    0.031246] thermal_sys: Registered thermal governor 'bang_bang'
[    0.031250] thermal_sys: Registered thermal governor 'step_wise'
[    0.031254] thermal_sys: Registered thermal governor 'user_space'
[    0.031257] thermal_sys: Registered thermal governor 'power_allocator'
[    0.031519] NET: Registered protocol family 2
[    0.031828] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear)
[    0.031846] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.031897] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear)
[    0.032017] TCP: Hash tables configured (established 8192 bind 8192)
[    0.032133] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.032154] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.032256] NET: Registered protocol family 1
[    0.032277] PCI: CLS 0 bytes, default 64
[    0.033379] workingset: timestamp_bits=46 max_order=18 bucket_order=0
[    0.036447] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.036455] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.049368] mtk-tphy 1a0c4000.usb-phy: failed to get ref_clk(id-1)
[    0.052445] mt-pmic-pwrap 10001000.pwrap: unexpected interrupt int=0x1
[    0.066456] Serial: 8250/16550 driver, 3 ports, IRQ sharing disabled
[    0.067127] printk: console [ttyS0] disabled
[    0.087546] 11002000.serial: ttyS0 at MMIO 0x11002000 (irq = 118, base_baud = 1562500) is a ST16650V2
[    0.628802] printk: console [ttyS0] enabled
[    0.653636] 11004000.serial: ttyS1 at MMIO 0x11004000 (irq = 119, base_baud = 1562500) is a ST16650V2
[    0.663319] 1100c000.serial: ttyS2 at MMIO 0x1100c000 (irq = 125, base_baud = 17499995) is a MediaTek BTIF
[    0.673046] serial serial0: tty port ttyS2 registered
[    0.678298] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    0.685864] libphy: Fixed MDIO Bus: probed
[    0.713261] libphy: mdio: probed
[    0.716527] mtk_soc_eth 1b100000.ethernet: generated random MAC address e6:92:e4:25:e8:06
[    0.724971] mtk_soc_eth 1b100000.ethernet eth0: mediatek frame engine at 0xffffffc011600000, irq 134
[    0.734123] mtk_soc_eth 1b100000.ethernet: generated random MAC address c6:8b:e7:c0:9f:93
[    0.742493] mtk_soc_eth 1b100000.ethernet eth1: mediatek frame engine at 0xffffffc011600000, irq 134
[    0.751704] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.758228] ehci-pci: EHCI PCI platform driver
[    0.762702] ehci-platform: EHCI generic platform driver
[    0.768033] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    0.774223] ohci-platform: OHCI generic platform driver
[    0.779994] usbcore: registered new interface driver usb-storage
[    0.786375] rtc_mt7622 10212800.rtc: registered as rtc0
[    0.792252] Driver for 1-wire Dallas network protocol.
[    0.797603] mtk-thermal 1100b000.thermal: Device not calibrated, using default calibration values
[    0.806794] mtk-wdt 10212000.watchdog: Watchdog enabled (timeout=31 sec, nowayout=0)
[    0.814628] Bluetooth: HCI UART driver ver 2.3
[    0.819068] Bluetooth: HCI UART protocol H4 registered
[    0.824200] Bluetooth: HCI UART protocol BCSP registered
[    0.829560] Bluetooth: HCI UART protocol Broadcom registered
[    0.835235] Bluetooth: HCI UART protocol QCA registered
[    0.867137] mtk-msdc 11240000.mmc: Got CD GPIO
[    0.897251] NET: Registered protocol family 10
[    0.902301] Segment Routing with IPv6
[    0.906011] NET: Registered protocol family 17
[    0.910472] 8021q: 802.1Q VLAN Support v1.8
[    0.925308] mtk-pcie 1a140000.pcie: host bridge /pcie@1a140000 ranges:
[    0.931860] mtk-pcie 1a140000.pcie: Parsing ranges property...
[    0.937694] mtk-pcie 1a140000.pcie:   MEM 0x20000000..0x2fffffff -> 0x20000000
[    0.987814] mtk-msdc 11230000.mmc: phase: [map:fffffff] [maxlen:28] [final:9]
[    0.995724] mmc0: new HS200 MMC card at address 0001
[    1.001820] mmcblk0: mmc0:0001 008G30 7.28 GiB 
[    1.007265] mmcblk0boot0: mmc0:0001 008G30 partition 1 4.00 MiB
[    1.014073] mmcblk0boot1: mmc0:0001 008G30 partition 2 4.00 MiB
[    1.020054] mmcblk0rpmb: mmc0:0001 008G30 partition 3 4.00 MiB, chardev (250:0)
[    1.028576]  mmcblk0: p1 p2
[    1.068777] mtk-pcie 1a140000.pcie: Port1 link down
[    1.073764] mtk-pcie 1a140000.pcie: PCI host bridge to bus 0000:00
[    1.079947] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.085431] pci_bus 0000:00: root bus resource [mem 0x20000000-0x2fffffff]
[    1.092304] pci_bus 0000:00: scanning bus
[    1.096360] pci 0000:00:00.0: [14c3:3258] type 01 class 0x060400
[    1.102477] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x1ffffffff 64bit pref]
[    1.111397] pci_bus 0000:00: fixups for bus
[    1.115581] pci 0000:00:00.0: scanning [bus 00-00] behind bridge, pass 0
[    1.122279] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    1.130309] pci 0000:00:00.0: scanning [bus 00-00] behind bridge, pass 1
[    1.137162] pci_bus 0000:01: scanning bus
[    1.141296] pci 0000:01:00.0: [14c3:7615] type 00 class 0x000280
[    1.147531] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
[    1.155272] pci 0000:01:00.0: 2.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s x1 link at 0000:00:00.0 (capable of 4.000 Gb/s with )
[    1.170358] pci_bus 0000:01: fixups for bus
[    1.174539] pci_bus 0000:01: bus scan returning with max=01
[    1.180109] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    1.186723] pci_bus 0000:00: bus scan returning with max=01
[    1.192306] pci 0000:00:00.0: BAR 0: no space for [mem size 0x200000000 64bit pref]
[    1.199958] pci 0000:00:00.0: BAR 0: failed to assign [mem size 0x200000000 64bit pref]
[    1.207958] pci 0000:00:00.0: BAR 8: assigned [mem 0x20000000-0x200fffff]
[    1.214744] pci 0000:01:00.0: BAR 0: assigned [mem 0x20000000-0x200fffff 64bit]
[    1.222133] pci 0000:00:00.0: PCI bridge to [bus 01]
[    1.227099] pci 0000:00:00.0:   bridge window [mem 0x20000000-0x200fffff]
[    1.234085] mtk_hsdma 1b007000.dma-controller: Using 3 as missing dma-requests property
[    1.242274] mtk_hsdma 1b007000.dma-controller: MediaTek HSDMA driver registered
[    1.794810] mt753x gsw@0: LAN/WAN VLAN setting=wllll
[    1.800254] mt753x gsw@0: Switch is MediaTek MT7531BE rev 0
[    6.455672] xhci-mtk 1a0c0000.usb: xHCI Host Controller
[    6.460909] xhci-mtk 1a0c0000.usb: new USB bus registered, assigned bus number 1
[    6.469954] xhci-mtk 1a0c0000.usb: hcc params 0x01403198 hci version 0x96 quirks 0x0000000000210010
[    6.479025] xhci-mtk 1a0c0000.usb: irq 130, io mem 0x1a0c0000
[    6.485154] hub 1-0:1.0: USB hub found
[    6.488920] hub 1-0:1.0: 2 ports detected
[    6.493140] xhci-mtk 1a0c0000.usb: xHCI Host Controller
[    6.498370] xhci-mtk 1a0c0000.usb: new USB bus registered, assigned bus number 2
[    6.505770] xhci-mtk 1a0c0000.usb: Host supports USB 3.0 SuperSpeed
[    6.512063] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    6.520376] hub 2-0:1.0: USB hub found
[    6.524138] hub 2-0:1.0: 1 port detected
[    6.528401] rtc_mt7622 10212800.rtc: setting system clock to 2020-05-17T18:42:36 UTC (1589740956)
[    6.543603] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    6.551755] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[    6.558729] Freeing unused kernel memory: 448K
[    6.578811] Run /sbin/init as init process
[    6.628176] init: Console is alive
[    6.631745] init: - watchdog -
[    6.673791] random: fast init done
[    6.769358] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    6.783368] ehci-fsl: Freescale EHCI Host controller driver
[    6.793243] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    6.809234] init: - preinit -
[    6.894413] mtk_soc_eth 1b100000.ethernet: PPE started
[    6.899592] mtk_soc_eth 1b100000.ethernet eth0: configuring for fixed/2500base-x link mode
[    6.907911] mtk_soc_eth 1b100000.ethernet eth0: Link is Up - 2.5Gbps/Full - flow control rx/tx
[    6.918897] usb 1-2: new high-speed USB device number 2 using xhci-mtk
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    7.146538] usb-storage 1-2:1.0: USB Mass Storage device detected
[    7.152805] random: procd: uninitialized urandom read (4 bytes read)
[    7.152854] scsi host0: usb-storage 1-2:1.0
[    8.196488] scsi 0:0:0:0: Direct-Access     JetFlash Transcend 4GB    8.07 PQ: 0 ANSI: 2
[    8.205669] sd 0:0:0:0: [sda] 7847936 512-byte logical blocks: (4.02 GB/3.74 GiB)
[    8.213314] sd 0:0:0:0: [sda] Write Protect is off
[    8.218106] sd 0:0:0:0: [sda] Mode Sense: 03 00 00 00
[    8.223295] sd 0:0:0:0: [sda] No Caching mode page found
[    8.228609] sd 0:0:0:0: [sda] Assuming drive cache: write through
[    8.422794]  sda: sda1
[    8.426073] sd 0:0:0:0: [sda] Attached SCSI removable disk
[   10.948245] mount_root: mounting /dev/root
[   10.954012] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[   10.959568] mount_root: loading kmods from internal overlay
[   10.973450] kmodloader: loading kernel modules from //etc/modules-boot.d/*
[   10.981062] kmodloader: done loading kernel modules from //etc/modules-boot.d/*
[   11.109496] urandom-seed: Seeding with /etc/urandom.seed
[   11.127439] procd: - early -
[   11.130347] procd: - watchdog -
[   11.645926] procd: - watchdog -
[   11.649233] procd: - ubus -
[   11.656335] random: ubusd: uninitialized urandom read (4 bytes read)
[   11.702314] random: ubusd: uninitialized urandom read (4 bytes read)
[   11.708824] random: ubusd: uninitialized urandom read (4 bytes read)
[   11.715494] procd: - init -
Please press Enter to activate this console.
[   11.819810] urngd: v1.0.2 started.
[   11.848392] random: crng init done
[   11.851859] random: 6 urandom warning(s) missed due to ratelimiting
[   11.853249] kmodloader: loading kernel modules from /etc/modules.d/*
[   11.876059] tun: Universal TUN/TAP device driver, 1.6
[   11.891253] cryptodev: driver 1.10 loaded.
[   11.898077] i2c /dev entries driver
[   11.908146] hidraw: raw HID events driver (C) Jiri Kosina
[   11.915490] Mirror/redirect action on
[   11.922348] u32 classifier
[   11.925078]     input device check on
[   11.928735]     Actions configured
[   11.948778] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   11.954116] Bluetooth: BNEP filters: protocol multicast
[   11.959346] Bluetooth: BNEP socket layer initialized
[   11.966091] usbcore: registered new interface driver btusb
[   11.972407] usbcore: registered new interface driver cdc_wdm
[   11.978561] Loading modules backported from Linux version v5.4.27-0-g585e0cc08069
[   11.986045] Backport generated by backports.git v5.4.27-1-0-gf6e8852f
[   11.993584] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[   11.999541] Bluetooth: HIDP socket layer initialized
[   12.018818] Bluetooth: RFCOMM TTY layer initialized
[   12.023726] Bluetooth: RFCOMM socket layer initialized
[   12.028876] Bluetooth: RFCOMM ver 1.11
[   12.034302] usbcore: registered new interface driver ums-alauda
[   12.040639] usbcore: registered new interface driver ums-cypress
[   12.047027] usbcore: registered new interface driver ums-datafab
[   12.053350] usbcore: registered new interface driver ums-freecom
[   12.059663] usbcore: registered new interface driver ums-isd200
[   12.065895] usbcore: registered new interface driver ums-jumpshot
[   12.072271] usbcore: registered new interface driver ums-karma
[   12.078501] usbcore: registered new interface driver ums-sddr09
[   12.084744] usbcore: registered new interface driver ums-sddr55
[   12.091013] usbcore: registered new interface driver ums-usbat
[   12.100993] wireguard: WireGuard 1.0.20200506 loaded. See www.wireguard.com for information.
[   12.109450] wireguard: Copyright (C) 2015-2019 Jason A. Donenfeld <[email protected]>. All Rights Reserved.
[   12.128998] xt_time: kernel timezone is -0000
[   12.133986] usbcore: registered new interface driver cdc_ether
[   12.231145] mt7615e 0000:01:00.0: assign IRQ: got 139
[   12.236249] pci 0000:00:00.0: enabling device (0000 -> 0002)
[   12.241913] pci 0000:00:00.0: enabling bus mastering
[   12.246887] mt7615e 0000:01:00.0: enabling device (0000 -> 0002)
[   12.252970] mt7615e 0000:01:00.0: enabling bus mastering
[   12.261767] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   12.284318] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
[   12.306602] PPP generic driver version 2.4.2
[   12.312430] NET: Registered protocol family 24
[   12.318433] usbcore: registered new interface driver qmi_wwan
[   12.324463] mt7622-wmac 18000000.wmac: HW/SW Version: 0x8a108a10, Build Time: 20190801210006a
[   12.324463] 
[   12.336368] kmodloader: done loading kernel modules from /etc/modules.d/*
[   12.354691] mt7622-wmac 18000000.wmac: N9 Firmware Version: 2.0, Build Time: 20200131180931
[   13.702412] mtk_soc_eth 1b100000.ethernet eth0: Link is Down
[   13.710927] mtk_soc_eth 1b100000.ethernet: 0x100 = 0xffff9070, 0x10c = 0x100808ff
[   13.718436] mtk_soc_eth 1b100000.ethernet: reset pse
[   13.810699] mtk_soc_eth 1b100000.ethernet: PPE started
[   13.815903] debugfs: Directory 'mtk_ppe' with parent '/' already present!
[   13.822736] mtk_soc_eth 1b100000.ethernet eth0: configuring for fixed/2500base-x link mode
[   13.831084] mtk_soc_eth 1b100000.ethernet eth0: Link is Up - 2.5Gbps/Full - flow control rx/tx
[   13.833137] br-lan: port 1(eth0) entered blocking state
[   13.845016] br-lan: port 1(eth0) entered disabled state
[   13.850464] device eth0 entered promiscuous mode
[   13.859647] br-lan: port 1(eth0) entered blocking state
[   13.864905] br-lan: port 1(eth0) entered forwarding state
[   13.877653] mtk_soc_eth 1b100000.ethernet eth1: configuring for fixed/rgmii link mode
[   13.887134] mtk_soc_eth 1b100000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[   13.895841] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[   15.922328] br-lan: port 2(wlan1) entered blocking state
[   15.927660] br-lan: port 2(wlan1) entered disabled state
[   15.933126] device wlan1 entered promiscuous mode
[   15.937893] br-lan: port 2(wlan1) entered blocking state
[   15.943206] br-lan: port 2(wlan1) entered forwarding state
[   15.948971] br-lan: port 2(wlan1) entered disabled state
[   15.968334] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
[   15.974894] br-lan: port 2(wlan1) entered blocking state
[   15.980233] br-lan: port 2(wlan1) entered forwarding state
[   33.762788] mt7615e 0000:01:00.0: Message -4294967280 (seq 1) timeout
[   33.769238] mt7615e 0000:01:00.0: Failed to get patch semaphore

Seems like mt7622 wifi firmware gets loaded…so i guess semaphore is not unlocked

Is there a way to fix this?

BTW what is this semaphore and how to unlock it?

Looks like internal Wifi is loaded correctly. Mt7622 wmac got its firmware loaded. MT7615 use the same driver and that seems to be the problem. MT7622 gets semaphore and do not give it up on time. Maybe try to disable mt7622 in device tree and check if mt7615 is fine. Im not sure what to do if you need both.

Both mt7622 and mt7615 are loaded correctly and run smoothly on my board.

   11.570554] kmodloader: done loading kernel modules from /etc/modules.d/*
[   11.687303] mt7615e 0000:01:00.0: HW/SW Version: 0x8a108a10, Build Time: 20180518100604a
[   11.687303]
[   11.687306] mt7622-wmac 18000000.wmac: HW/SW Version: 0x8a108a10, Build Time: 20190801210006a
[   11.687306]
[   11.963927] mt7622-wmac 18000000.wmac: N9 Firmware Version: 2.0, Build Time: 20200131180931
[   12.098384] mt7615e 0000:01:00.0: N9 Firmware Version: 2.0, Build Time: 20200131181812
[   12.126014] mt7615e 0000:01:00.0: CR4 Firmware Version: _reserved_, Build Time: 20190121161307

MT7622 onboard WiFi actually shares the same firmware download procedure with BT. However, the driver currently lacks of mechanism to sync both components that cross the subsystem. Try to disable btif node in dts to keep them mutually exclusive for the moment. Will fix it in spare time.

More specifically, you may need to apply this patch to get BT work. https://patchwork.kernel.org/patch/11504383/

And just for clarification, you are using Openwrt Image generated with steps from first post?