Closed vycb closed 3 years ago
Last 3 lines from dmesg look like a crash/warning (backtrace)
Can you upload full dmesg?
This is the full dmesg:
```
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 5.15.0-rc1-bpi-r64-0 (root@BLUE) (aarch64-linux-gnu-gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #3 SMP PREEMPT Sat Sep 18 13:15:08 CEST 2021
[ 0.000000] Machine model: Bananapi BPI-R64
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000040000000-0x000000007fffffff]
[ 0.000000] DMA32 empty
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000040000000-0x0000000042ffffff]
[ 0.000000] node 0: [mem 0x0000000043000000-0x000000004302ffff]
[ 0.000000] node 0: [mem 0x0000000043030000-0x000000007fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000007fffffff]
[ 0.000000] psci: probing for conduit method from DT.
[ 0.000000] psci: PSCIv1.1 detected in firmware.
[ 0.000000] psci: Using standard PSCI v0.2 function IDs
[ 0.000000] psci: MIGRATE_INFO_TYPE not supported.
[ 0.000000] psci: SMC Calling Convention v1.2
[ 0.000000] percpu: Embedded 17 pages/cpu s32216 r8192 d29224 u69632
[ 0.000000] pcpu-alloc: s32216 r8192 d29224 u69632 alloc=17*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: detected: ARM erratum 843419
[ 0.000000] CPU features: detected: ARM erratum 845719
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 258048
[ 0.000000] Kernel command line: console=ttyS0,115200 rw rootwait root=PARTLABEL=root-bpir64-sdmmc
[ 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: 1014092K/1048576K available (7744K kernel code, 1224K rwdata, 2588K rodata, 2048K init, 297K bss, 34484K reserved, 0K cma-reserved)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] rcu: RCU event tracing is enabled.
[ 0.000000] Trampoline variant of Tasks RCU enabled.
[ 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] Root IRQ handler: gic_handle_irq
[ 0.000000] random: get_random_bytes called from start_kernel+0x40c/0x59c 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.000000] sched_clock: 56 bits at 12MHz, resolution 80ns, wraps every 4398046511080ns
[ 0.000255] Console: colour dummy device 80x25
[ 0.000296] Calibrating delay loop (skipped), value calculated using timer frequency.. 25.00 BogoMIPS (lpj=50000)
[ 0.000309] pid_max: default: 32768 minimum: 301
[ 0.000425] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.000443] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.002009] rcu: Hierarchical SRCU implementation.
[ 0.002869] smp: Bringing up secondary CPUs ...
[ 0.003451] Detected VIPT I-cache on CPU1
[ 0.003466] CPU features: SANITY CHECK: Unexpected variation in (((3) << 19) | ((3) << 16) | ((14) << 12) | ((0) << 8) | ((0) << 5)). Boot CPU: 0x00000000bebc20, CPU1: 0x00000000000000
[ 0.003497] CPU features: Unsupported CPU feature variation detected.
[ 0.003540] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[ 0.003659] smp: Brought up 1 node, 2 CPUs
[ 0.003681] SMP: Total of 2 processors activated.
[ 0.003689] CPU features: detected: 32-bit EL0 Support
[ 0.003697] CPU features: detected: CRC32 instructions
[ 0.004481] CPU: All CPU(s) started at EL2
[ 0.004503] alternatives: patching kernel code
[ 0.005264] devtmpfs: initialized
[ 0.010786] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.010819] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[ 0.010916] pinctrl core: initialized pinctrl subsystem
[ 0.011823] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.012342] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[ 0.012381] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[ 0.012413] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.012489] audit: initializing netlink subsys (disabled)
[ 0.012693] audit: type=2000 audit(0.012:1): state=initialized audit_enabled=0 res=1
[ 0.013129] i2c-core: driver [dummy] registered
[ 0.013145] thermal_sys: Registered thermal governor 'fair_share'
[ 0.013150] thermal_sys: Registered thermal governor 'bang_bang'
[ 0.013157] thermal_sys: Registered thermal governor 'step_wise'
[ 0.013164] thermal_sys: Registered thermal governor 'user_space'
[ 0.013485] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.013574] ASID allocator initialised with 65536 entries
[ 0.031129] gpio-499 (asm_sel): hogged as output/high
[ 0.051760] vgaarb: loaded
[ 0.052072] SCSI subsystem initialized
[ 0.052320] libata version 3.00 loaded.
[ 0.052526] usbcore: registered new interface driver usbfs
[ 0.052576] usbcore: registered new interface driver hub
[ 0.052612] usbcore: registered new device driver usb
[ 0.052701] pps_core: LinuxPPS API ver. 1 registered
[ 0.052709] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti
so we have a NULL-pointer dereference in mtk_compose_msi_msg
can you try using 5.15.0 final instead of rc1?
this function was introduced by this commit (long time ago):
42fe2f91b4eb 2018-05-04 PCI: mediatek: Implement chained IRQ handling setup
https://elixir.bootlin.com/linux/v5.16-rc2/source/drivers/pci/controller/pcie-mediatek.c#L401
so we need to find out which line here causing the crash
you could put a line like this before/after each existing
printk(KERN_ALERT "DEBUG: Passed %s %d \n",__FUNCTION__,__LINE__);
I see mt7622-wmac_rf.bin is missing from /lib/firmware/mediatek
Maybe this is it?
*_rf.bin is data to override eeprom, not needed
it looks like pcie related, but imho mt7622_wmac is not attached to pcie, but mt7615 driver (which is core for mt7622) seems to check it and crash there because of null pointer
please try to upgrade to 5.15.x without rc and if this does not help try to debug which value is NULL/line where crash happens
something like this:
diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c
index 2f3f974977a3..bc31d99c16e4 100644
--- a/drivers/pci/controller/pcie-mediatek.c
+++ b/drivers/pci/controller/pcie-mediatek.c
@@ -400,18 +400,20 @@ static struct pci_ops mtk_pcie_ops_v2 = {
static void mtk_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
{
+printk(KERN_ALERT "DEBUG: Passed %s %d data: 0x%p \n",__FUNCTION__,__LINE__,data);
struct mtk_pcie_port *port = irq_data_get_irq_chip_data(data);
phys_addr_t addr;
-
+printk(KERN_ALERT "DEBUG: Passed %s %d 0x%p\n",__FUNCTION__,__LINE__,port);
/* MT2712/MT7622 only support 32-bit MSI addresses */
addr = virt_to_phys(port->base + PCIE_MSI_VECTOR);
msg->address_hi = 0;
msg->address_lo = lower_32_bits(addr);
-
+printk(KERN_ALERT "DEBUG: Passed %s %d 0x%p\n",__FUNCTION__,__LINE__,data);
msg->data = data->hwirq;
-
+printk(KERN_ALERT "DEBUG: Passed %s %d port-pcie:0x%p msg:0x%p\n",__FUNCTION__,__LINE__,port->pcie,msg);
dev_dbg(port->pcie->dev, "msi#%d address_hi %#x address_lo %#x\n",
(int)data->hwirq, msg->address_hi, msg->address_lo);
+printk(KERN_ALERT "DEBUG: Passed %s %d \n",__FUNCTION__,__LINE__);
}
static int mtk_msi_set_affinity(struct irq_data *irq_data,
Weird, I'm running on the 5.15-rc1 for a long time now...
Although I'm not using that image, but build one again from the script...
Is there hardware plugged in any pcie slot?
Is there hardware plugged in any pcie slot?
Yes, It's R64 with mt7615 module
Did you try without the module ? Note that you do still need to add the rf.bin manually
Did you try without the module ? Note that you do still need to add the rf.bin manually
I'm going to use R64 with mt7615, as suggested BPI-SINOVOIP. Original mediatec firmware from an image also didn't get wify:
mt7615e_rf.bin mt7622-wmac_rf.bin mt7622_n9.bin mt7622_rom_patch.bin
so I did try from linux git
mt7615_cr4.bin mt7615_n9.bin mt7615_rom_patch.bin
In the last list you then would also need these
have tested r64 with mt7615 in cn25 and my own debian bulllseye image with my kernel:
root@bpi-r64:~# uname -a
Linux bpi-r64 5.15.0-bpi-r64-main #1 SMP PREEMPT Sat Nov 27 14:56:12 CET 2021 aarch64 GNU/Linux
root@bpi-r64:~# ip a | grep wl
12: wlp1s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
15: wlan1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
root@bpi-r64:~# dmesg | grep -i 'pcie\|mt7615\|mt7622'
[ 0.000000] Kernel command line: board=bpi-r64 console=ttyS0,115200n1 earlyprintk root=/dev/mmcblk1p5 rootfstype=ext4 rootwait serv2
[ 1.299058] rtc_mt7622 10212800.rtc: registered as rtc0
[ 1.304320] rtc_mt7622 10212800.rtc: setting system clock to 2000-01-01T00:00:00 UTC (946684800)
[ 1.557232] mtk-pcie 1a143000.pcie: host bridge /pcie@1a143000 ranges:
[ 1.564006] mtk-pcie 1a143000.pcie: Parsing ranges property...
[ 1.575502] mtk-pcie 1a143000.pcie: MEM 0x0020000000..0x0027ffffff -> 0x0020000000
[ 1.608778] mtk-pcie 1a143000.pcie: PCI host bridge to bus 0000:00
[ 1.724891] pci 0000:01:00.0: 2.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x1 link at 0000:00:00.0 (capable of 4.0)
[ 1.816429] mtk-pcie 1a145000.pcie: host bridge /pcie@1a145000 ranges:
[ 1.823054] mtk-pcie 1a145000.pcie: Parsing ranges property...
[ 1.828901] mtk-pcie 1a145000.pcie: MEM 0x0028000000..0x002fffffff -> 0x0028000000
[ 1.937237] mtk-pcie 1a145000.pcie: Port1 link down
[ 1.942316] mtk-pcie 1a145000.pcie: PCI host bridge to bus 0001:00
[ 6.357204] mt7615e 0000:01:00.0: assign IRQ: got 146
[ 6.473149] mt7615e 0000:01:00.0: enabling device (0000 -> 0002)
[ 6.509742] mt7615e 0000:01:00.0: enabling bus mastering
[ 6.530775] mtk-pcie 1a143000.pcie: msi#0 address_hi 0x0 address_lo 0x40ebd0c0
[ 6.579444] mt7615e 0000:01:00.0: Load eeprom: /lib/firmware/mediatek/mt7615e_rf.bin
[ 6.600582] mt7615e 0000:01:00.0: Open eeprom file failed: /lib/firmware/mediatek/mt7615e_rf.bin
[ 6.771994] mt7622-wmac 18000000.wmac: Load eeprom: /lib/firmware/mediatek/mt7622-wmac_rf.bin
[ 6.793776] mt7622-wmac 18000000.wmac: Load eeprom OK, count 1024 byte
[ 6.939567] mt7622-wmac 18000000.wmac: N9 Firmware Version: _reserved_, Build Time: 20190801210351
[ 7.037018] mt7615e 0000:01:00.0 wlp1s0: renamed from wlan0
root@bpi-r64:~#
maybe eric misses the pcie-patches für r64? afair they are mainline with 5.16
https://github.com/frank-w/BPI-R2-4.14/commits/5.15-main
Indeed there are no PCIe patches, I do not have the means to test them. One could add the patches to the linux-5.xx.x directory. Then build an image using the script.
Or change the Linux version to 5.16-rc3 in the script and rename the linux-5.15.-rc1 directory accordingly. Then build an image with the script.
The script is now changed to 5.16-rc3, only need to build it and try:
./build.sh -SD
./build.sh
./build.sh -SD ./build.sh
tried to build ubuntu-5.16-rc3-bpir64-sdmmc.img as USE_LOOPDEV="true", but the image in result not bootable. Looks like it's too small in size:
6.5M Nov 30 20:12 ubuntu-5.16-rc3-bpir64-sdmmc.img.xz
compare to original:
187M Nov 27 09:32 arch-5.15.rc3-bpir64-sdmmc.img.xz
Delete the whole buildR64ubuntu folder, clone again.
./build.sh -a
First. This will install all necessary packages, you might not have some installed yet.
Problem size was fixed but SDcard still not bootable, however image looks normal. To build the image I use VM - QEMU KVM Ubuntu Focal. To review the image: https://drive.google.com/drive/folders/1Y5PpFmqk4wBDKWOci2WwcFM5OZ6_KQ0b?usp=sharing
``` build -a Target device=sdmmc Not running on Bananapi BPI-R64 Reading package lists... Building dependency tree... Reading state information... bc is already the newest version (1.07.1-2build1). bison is already the newest version (2:3.5.1+dfsg-1). flex is already the newest version (2.6.4-6.2). gzip is already the newest version (1.10-0ubuntu4). libncurses-dev is already the newest version (6.2-0ubuntu2). zerofree is already the newest version (1.1.1-1). arch-install-scripts is already the newest version (23-1). f2fs-tools is already the newest version (1.11.0-1.1ubuntu1). symlinks is already the newest version (1.4-4). build-essential is already the newest version (12.8ubuntu1.1). ca-certificates is already the newest version (20210119~20.04.2). debootstrap is already the newest version (1.0.118ubuntu1.5). git is already the newest version (1:2.25.1-1ubuntu3.2). libssl-dev is already the newest version (1.1.1f-1ubuntu2.9). parted is already the newest version (3.3-4ubuntu0.20.04.1). u-boot-tools is already the newest version (2021.01+dfsg-3ubuntu0~20.04.3). udisks2 is already the newest version (2.8.4-1ubuntu2). wget is already the newest version (1.20.3-1ubuntu2). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Reading package lists... Building dependency tree... Reading state information... gcc-aarch64-linux-gnu is already the newest version (4:9.3.0-1ubuntu2). libc6:i386 is already the newest version (2.31-0ubuntu9.2). qemu-user-static is already the newest version (1:4.2-3ubuntu6.18). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. basename: missing operand Try 'basename --help' for more information. OPTIONS: rootfs= boot= kernel= tar= apt=true SETUP=RT Rootfsdir=/mnt/bpirootfs Src=/mnt/bpirootfs/usr/src Crossc=CROSS_COMPILE=aarch64-linux-gnu- Device=/dev/loop0 sectorsize=512 Mountdev=/dev/loop0p1 Makej=-j4 Running exit function to clean up... /mnt/bpirootfs is a mountpoint Unmounting...DO NOT REMOVE! Done. You can remove the card now. ```
Hmz, I have just build an image running focal and it boots fine.
What do the build.log and build-error.log look like, when you try building again (with files of last attempt in tact):
./build.sh
The logs should give my some clue as what is going wrong.
What does the debug output look like when booting?
Please enclose output with three time the character: `
Did you write the .img.xz with:
xz -dcv XXX.img.xz | sudo dd of=/dev/sdX
xz -dcv XXX.img.xz | sudo dd of=/dev/sdX
I decompress to XXX.img and use bpi-copy
What does the debug output look like when booting?
card not boot at all - starts booting emmc like no SDcard at all.
build-error.log on Ubuntu VM:
basename: missing operand
rmdir: failed to remove '/mnt/bpirootfs/usr/src': No such file or directory
./build.sh: line 452: ./atf-mtksoc/*.bash: No such file or directory
I created Arch linux VM-qemu and now I'm in process of building image
tried Third Release Candidate, boot stops on error:
[ 2.242764] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,1)
[ 2.251196] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G S 5.16.0-rc3-bpi-r64-0 #1
[ 2.259716] Hardware name: Bananapi BPI-R64 (DT)
[ 2.264326] Call trace:
[ 2.266764] dump_backtrace+0x0/0x1c4
[ 2.270432] show_stack+0x18/0x64
[ 2.273744] dump_stack_lvl+0x68/0x84
[ 2.277404] dump_stack+0x18/0x34
[ 2.280714] panic+0x130/0x2e8
[ 2.283768] mount_block_root+0x174/0x1f4
[ 2.287773] mount_root+0x8c/0x16c
[ 2.291169] prepare_namespace+0x150/0x160
[ 2.295260] kernel_init_freeable+0x230/0x280
[ 2.299611] kernel_init+0x24/0x124
[ 2.303095] ret_from_fork+0x10/0x20
[ 2.306669] SMP: stopping secondary CPUs
[ 2.310587] Kernel Offset: disabled
[ 2.314067] CPU features: 0x0,00006002,00000842
[ 2.318591] Memory Limit: none
[ 2.321642] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,1) ]---
arch 5.16-rc3 build,sh was successful. SDcard boots quickly.
On R64 with minicom I can't check network status, after command ip a console stops respond to minicom, restart is required.
I refreshed the image, so should be no more bad block.
I'll check if it hangs here tomorrow...
Image Third Release Candidate boot without the error.
However R64 console hangs on command ip a, PS1 doesn't return, only debug output printed:
[ 552.034915] audit: type=1131 audit(1637538080.436:72): pid=1 uid=0 auid=4294967295 ses'
.....
Still need to disable the audit messages in the kernel bootargs.... That will disable the audit messages.
They are not a message of any error. Is it really stuck after getting an audit message? Can you press enter and get back to the prompt?
I've tried the image (downloaded again) and it works fine. 'ip a' and 'iw dev' and 'systemctl status hostapd' show everything ok.
You could try connecting via SSH over lan or wifi. Maybe the serial link is faulty...
3d release build and my build 5.16.rc3 are same after 'ip a' and 'iw dev' no return and Ctr-c not help, only restart. Also no network. no ping any.
[root@bpir64 ~]# ping 1.1.1.1
ping: connect: Network is unreachable
systemctl restart systemd-networkd
systemd-networkd.service: Found left-over prcess 233 (systemd-network) in control group while starting unit. Ignoring.
This usually indicates unclean termination of a previous run, or service implementation deficiencies.
systemd-networkd.service: start operation timed out. Terminating.
I built linux-5.15 there is no such error, but 'iw dev' still shows empty
I guess still a PCIe related error. I cannot reproduce. What does dmesg output look like just after booting? Please post the whole output
dmesg output similar to above:
```
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 5.15.0-bpi-r64-0 (root@arch) (aarch64-linux-gnu-gcc (GCC) 11.2.0, GNU ld (GNU Binutils) 2.37) #1 SMP PREEMPT Thu Dec 2 12:22:18 UTC 2021
[ 0.000000] Machine model: Bananapi BPI-R64
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000040000000-0x000000007fffffff]
[ 0.000000] DMA32 empty
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000040000000-0x0000000042ffffff]
[ 0.000000] node 0: [mem 0x0000000043000000-0x000000004302ffff]
[ 0.000000] node 0: [mem 0x0000000043030000-0x000000007fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000007fffffff]
[ 0.000000] psci: probing for conduit method from DT.
[ 0.000000] psci: PSCIv1.1 detected in firmware.
[ 0.000000] psci: Using standard PSCI v0.2 function IDs
[ 0.000000] psci: MIGRATE_INFO_TYPE not supported.
[ 0.000000] psci: SMC Calling Convention v1.2
[ 0.000000] percpu: Embedded 17 pages/cpu s32216 r8192 d29224 u69632
[ 0.000000] pcpu-alloc: s32216 r8192 d29224 u69632 alloc=17*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: detected: ARM erratum 843419
[ 0.000000] CPU features: detected: ARM erratum 845719
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 258048
[ 0.000000] Kernel command line: console=ttyS0,115200 rw rootwait root=PARTLABEL=root-bpir64-sdmmc
[ 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: 1015300K/1048576K available (6976K kernel code, 1160K rwdata, 2364K rodata, 1856K init, 290K bss, 33276K reserved, 0K cma-reserved)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] rcu: RCU event tracing is enabled.
[ 0.000000] Trampoline variant of Tasks RCU enabled.
[ 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] Root IRQ handler: gic_handle_irq
[ 0.000000] random: get_random_bytes called from start_kernel+0x350/0x4e0 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.000001] sched_clock: 56 bits at 12MHz, resolution 80ns, wraps every 4398046511080ns
[ 0.000288] Console: colour dummy device 80x25
[ 0.000330] Calibrating delay loop (skipped), value calculated using timer frequency.. 25.00 BogoMIPS (lpj=50000)
[ 0.000345] pid_max: default: 32768 minimum: 301
[ 0.000469] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.000487] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.002115] rcu: Hierarchical SRCU implementation.
[ 0.002969] smp: Bringing up secondary CPUs ...
[ 0.003576] Detected VIPT I-cache on CPU1
[ 0.003591] CPU features: SANITY CHECK: Unexpected variation in (((3) << 19) | ((3) << 16) | ((14) << 12) | ((0) << 8) | ((0) << 5)). Boot CPU: 0x00000000bebc20, CPU1: 0x00000000000000
[ 0.003623] CPU features: Unsupported CPU feature variation detected.
[ 0.003666] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[ 0.003791] smp: Brought up 1 node, 2 CPUs
[ 0.003814] SMP: Total of 2 processors activated.
[ 0.003821] CPU features: detected: 32-bit EL0 Support
[ 0.003829] CPU features: detected: CRC32 instructions
[ 0.004549] CPU: All CPU(s) started at EL2
[ 0.004571] alternatives: patching kernel code
[ 0.005366] devtmpfs: initialized
[ 0.011171] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.011204] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[ 0.011304] pinctrl core: initialized pinctrl subsystem
[ 0.012259] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.012759] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[ 0.012798] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[ 0.012830] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.012901] audit: initializing netlink subsys (disabled)
[ 0.013106] audit: type=2000 audit(0.012:1): state=initialized audit_enabled=0 res=1
[ 0.013559] i2c-core: driver [dummy] registered
[ 0.013573] thermal_sys: Registered thermal governor 'fair_share'
[ 0.013578] thermal_sys: Registered thermal governor 'bang_bang'
[ 0.013585] thermal_sys: Registered thermal governor 'step_wise'
[ 0.013592] thermal_sys: Registered thermal governor 'user_space'
[ 0.013908] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.014003] ASID allocator initialised with 65536 entries
[ 0.031943] gpio-499 (asm_sel): hogged as output/high
[ 0.052188] vgaarb: loaded
[ 0.052600] SCSI subsystem initialized
[ 0.052812] libata version 3.00 loaded.
[ 0.053014] usbcore: registered new interface driver usbfs
[ 0.053056] usbcore: registered new interface driver hub
[ 0.053093] usbcore: registered new device driver usb
[ 0.053171] pps_core: LinuxPPS API ver. 1 registered
[ 0.053178] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti
Patch from 'frank-w' I added to linux-5.15 build
You have added the debug-patch or dts patches? I see no debug before the crash
Ah i see the crash is different. It looks like deadlock or attempt to re-relock (release lock missing) after/in mtk_pcie_irq_domain_alloc
This issue, actually, isn't directly related to an origin of the project. It's more related to the kernel version, I think.
I believe so also... Sadly I do not own an PCIe card, so cannot help any further.
This issue is closed. Maybe you know, what is the kernel version with the PCI fix?
Maybe Frank knows
5.16 should include the dts-patch i've linked,in 5.15 i need to add it manually
Thanks Frank
The last attempt 5.16-rc3 crashed
Idk if i booted 5.16 with pcie,but 5.15.0 with the patch worked for me without crash,see my stripped trace above
You can build franks kernel with the script. Set the .git as kernel source and the branch as kernel version. Create a folder with the linux-branchname and carefully select patches to put in the folder. Save e defconfig there
you need to change build.conf in my repo for r64...by default kernel for r2 is compiled
https://github.com/frank-w/BPI-R2-4.14/blob/5.4-main/.github/workflows/build.yml#L75
cryptodev is not needed, but importconfig and build.sh to build
5.16-rc is booting without crash too, mt7615 in cn25 (slot not shared with sata, have sata activated, so cn8 disabled) is recognized without errors
root@bpi-r64:~# uname -a
Linux bpi-r64 5.16.0-rc1-bpi-r64 #3 SMP PREEMPT Sun Dec 5 13:04:25 CET 2021 aarch64 GNU/Linux
root@bpi-r64:~# ip a | grep wl
12: wlp1s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
13: wlan1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
root@bpi-r64:~# dmesg | grep -i 'pcie\|mt7615\|mt7622'
[ 0.000000] Kernel command line: board=bpi-r64 console=ttyS0,115200n1 earlyprintk root=/dev/mmcblk1p5 rootfstype=ext4 rootwait servi2
[ 1.306987] rtc_mt7622 10212800.rtc: registered as rtc0
[ 1.312264] rtc_mt7622 10212800.rtc: setting system clock to 2000-01-01T00:00:00 UTC (946684800)
[ 1.569990] mtk-pcie 1a143000.pcie: host bridge /pcie@1a143000 ranges:
[ 1.584748] mtk-pcie 1a143000.pcie: Parsing ranges property...
[ 1.596137] mtk-pcie 1a143000.pcie: MEM 0x0020000000..0x0027ffffff -> 0x0020000000
[ 1.633817] mtk-pcie 1a143000.pcie: PCI host bridge to bus 0000:00
[ 1.739499] pci 0000:01:00.0: 2.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x1 link at 0000:00:00.0 (capable of 4.00)
[ 1.832519] mtk-pcie 1a145000.pcie: host bridge /pcie@1a145000 ranges:
[ 1.839103] mtk-pcie 1a145000.pcie: Parsing ranges property...
[ 1.844947] mtk-pcie 1a145000.pcie: MEM 0x0028000000..0x002fffffff -> 0x0028000000
[ 1.953276] mtk-pcie 1a145000.pcie: Port1 link down
[ 1.958356] mtk-pcie 1a145000.pcie: PCI host bridge to bus 0001:00
[ 6.226554] mt7615e 0000:01:00.0: assign IRQ: got 146
[ 6.289318] mt7615e 0000:01:00.0: enabling device (0000 -> 0002)
[ 6.315454] mt7615e 0000:01:00.0: enabling bus mastering
[ 6.327374] mtk-pcie 1a143000.pcie: msi#0 address_hi 0x0 address_lo 0x40f350c0
[ 6.394074] mt7615e 0000:01:00.0: Load eeprom: /lib/firmware/mediatek/mt7615e_rf.bin
[ 6.415909] mt7615e 0000:01:00.0: Open eeprom file failed: /lib/firmware/mediatek/mt7615e_rf.bin
[ 6.472839] mt7622-wmac 18000000.wmac: Load eeprom: /lib/firmware/mediatek/mt7622-wmac_rf.bin
[ 6.489330] mt7622-wmac 18000000.wmac: Load eeprom OK, count 1024 byte
[ 6.608796] mt7622-wmac 18000000.wmac: N9 Firmware Version: _reserved_, Build Time: 20190801210351
[ 6.982617] mt7615e 0000:01:00.0 wlp1s0: renamed from wlan0
Hello, tried last image from 2 Release Candidate. It looks like there is no any wifi link, no wlan or wlps0.. :
mediatek firmware are present:
I have R64 with mt7615 module.
Haw to enable wifi, what is missing?