From: 施小丰(医用制品产业集团-医用制品集团本部) <shixiaofeng@xxxxxxxxxxxxxxx> Sent: Thursday, March 21, 2024 9:13 PM To: linux-wireless <linux-wireless@xxxxxxxxxxxxxxx> Subject: Is RTL8822CE with Kernel 6.1 for imx6 > root@imx6solosabresd:~/8822CE# ./insmod.sh > [ 60.541840] rtw_8822ce 0000:01:00.0: enabling device (0000 -> 0003) > [ 60.558145] rtw_8822ce 0000:01:00.0: Firmware version 9.9.4, H2C version 15 > [ 60.567135] rtw_8822ce 0000:01:00.0: Firmware version 9.9.15, H2C version 15 > [ 60.706697] 8<--- cut here --- > [ 60.709775] Unhandled fault: imprecise external abort (0x1406) at 0x01b77740 > [ 60.716832] [01b77740] *pgd=00000000 > [ 60.720421] Internal error: : 1406 [#1] PREEMPT SMP ARM > [ 60.725653] Modules linked in: rtw88_8822ce(+) rtw88_8822c rtw88_pci rtw88_core > [ 60.732991] CPU: 0 PID: 796 Comm: insmod Not tainted 6.1.22-g9c59b15a9e72 #1 > [ 60.740049] Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree) > [ 60.746580] PC is at rtw_pci_read32+0x14/0x18 [rtw88_pci] > [ 60.752015] LR is at rtw_chip_info_setup+0x48/0x588 [rtw88_core] > [ 60.758170] pc : [<7f026048>] lr : [<7f0001c0>] psr: 60010013 > [ 60.764442] sp : c1d0dd28 ip : 00000201 fp : 89344040 > [ 60.769670] r10: 88b397a0 r9 : 88b3f890 r8 : 00000200 > [ 60.774897] r7 : 000003da r6 : 000003d9 r5 : 7f03a2c8 r4 : 88b397a0 > [ 60.781428] r3 : c09200f0 r2 : 00000000 r1 : 000000f0 r0 : 00000000 > [ 60.787959] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none > [ 60.795100] Control: 10c5387d Table: 15d10059 DAC: 00000051 > [ 60.800848] Register r0 information: NULL pointer > [ 60.805564] Register r1 information: non-paged memory > [ 60.810620] Register r2 information: NULL pointer The rtw_pci_read32() is very simple that just use 'rtwpci->mmap' as address, so I wonder this exception is caused by NULL of rtwpci->mmap. But, rtw_pci_io_mapping() has handled the NULL case: static int rtw_pci_io_mapping(struct rtw_dev *rtwdev, struct pci_dev *pdev) { ... rtwpci->mmap = pci_iomap(pdev, bar_id, len); if (!rtwpci->mmap) { pci_release_regions(pdev); rtw_err(rtwdev, "failed to map pci memory\n"); return -ENOMEM; } ... } So, did you change something for your board? Ping-Ke