Ipq4018 dk01.1 kernel panic


#1

hi,

after i upgraded openwrt-ipq40xx-qcom_ap-dk01.1-c1-squashfs-sysupgrade.bin via webpage and reboot, i got stuck with kernel panic :

[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: Qualcomm Technologies, Inc. IPQ40xx/AP-DK01.1-C1
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] random: get_random_bytes called from start_kernel+0x88/0x3c0 with crng_init=0
[    0.000000] percpu: Embedded 15 pages/cpu @cfdb0000 s29260 r8192 d23988 u61440
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 64512
[    0.000000] Kernel command line: rootfsname=rootfs rootwait
[    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Memory: 249924K/260096K available (4176K kernel code, 137K rwdata, 1172K rodata, 1024K init, 244K bss, 10172K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xd0800000 - 0xff800000   ( 752 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0208000 - 0xc0714238   (5169 kB)
[    0.000000]       .init : 0xc0900000 - 0xc0a00000   (1024 kB)
[    0.000000]       .data : 0xc0a00000 - 0xc0a224c0   ( 138 kB)
[    0.000000]        .bss : 0xc0a277a4 - 0xc0a64a34   ( 245 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] arch_timer: cp15 timer(s) running at 48.00MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xb11fd3bfb, max_idle_ns: 440795203732 ns
[    0.000008] sched_clock: 56 bits at 48MHz, resolution 20ns, wraps every 4398046511096ns
[    0.000024] Switching to timer-based delay loop, resolution 20ns
[    0.000260] Calibrating delay loop (skipped), value calculated using timer frequency.. 96.00 BogoMIPS (lpj=480000)
[    0.000281] pid_max: default: 32768 minimum: 301
[    0.000425] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000443] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.001088] CPU: Testing write buffer coherency: ok
[    0.001834] Setting up static identity map for 0x80300000 - 0x80300060
[    0.001989] Hierarchical SRCU implementation.
[    0.002705] smp: Bringing up secondary CPUs ...
[    0.005629] smp: Brought up 1 node, 4 CPUs
[    0.005651] SMP: Total of 4 processors activated (384.00 BogoMIPS).
[    0.005660] CPU: All CPU(s) started in SVC mode.
[    0.009857] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.010088] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.010116] futex hash table entries: 1024 (order: 4, 65536 bytes)
[    0.010316] pinctrl core: initialized pinctrl subsystem
[    0.011289] NET: Registered protocol family 16
[    0.011602] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.012719] cpuidle: using governor ladder
[    0.012765] cpuidle: using governor menu
[    0.031497] usbcore: registered new interface driver usbfs
[    0.031566] usbcore: registered new interface driver hub
[    0.031653] usbcore: registered new device driver usb
[    0.031701] pps_core: LinuxPPS API ver. 1 registered
[    0.031714] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.031740] PTP clock support registered
[    0.032965] clocksource: Switched to clocksource arch_sys_counter
[    0.033848] NET: Registered protocol family 2
[    0.034515] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
[    0.034562] TCP bind hash table entries: 2048 (order: 2, 16384 bytes)
[    0.034617] TCP: Hash tables configured (established 2048 bind 2048)
[    0.034733] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.034774] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.034990] NET: Registered protocol family 1
[    0.036076] No memory allocated for crashlog
[    0.036238] workingset: timestamp_bits=30 max_order=16 bucket_order=0
[    0.039774] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.039790] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.045614] io scheduler noop registered
[    0.045635] io scheduler deadline registered (default)
[    0.048531] bam-dma-engine 8e04000.dma: num-channels unspecified in dt
[    0.048553] bam-dma-engine 8e04000.dma: num-ees unspecified in dt
[    0.049327] tcsr 194b000.tcsr: setting usb hs phy mode select = e700e7
[    0.049435] tcsr 1953000.ess_tcsr: setting ess interface select = 0
[    0.049523] tcsr 1949000.tcsr: setting wifi_glb_cfg = 41000000
[    0.049605] tcsr 1957000.tcsr: setting wifi_noc_memtype_m0_m2 = 2222222
[    0.049850] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.050440] msm_serial 78af000.serial: msm_serial: detected port #0
[    0.050498] msm_serial 78af000.serial: uartclk = 1843200
[    0.050555] 78af000.serial: ttyMSM0 at MMIO 0x78af000 (irq = 25, base_baud = 115200) is a MSM
[    0.050584] msm_serial: console setup on port #0
[    0.561115] console [ttyMSM0] enabled
[    0.566050] msm_serial: driver initialized
[    0.574115] loop: module loaded
[    0.575367] spi_qup 78b5000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    0.577151] m25p80 spi0.0: found w25q128, expected mx25l25635f
[    0.589239] random: fast init done
[    0.593987] m25p80 spi0.0: w25q128 (16384 Kbytes)
[    0.594084] 11 fixed-partitions partitions found on MTD device spi0.0
[    0.597668] Creating 11 MTD partitions on "spi0.0":
[    0.604118] 0x000000000000-0x000000040000 : "SBL1"
[    0.609507] 0x000000040000-0x000000060000 : "MIBIB"
[    0.614289] 0x000000060000-0x0000000c0000 : "QSEE"
[    0.619024] 0x0000000c0000-0x0000000d0000 : "CDT"
[    0.623925] 0x0000000d0000-0x0000000e0000 : "DDRPARAMS"
[    0.628657] 0x0000000e0000-0x0000000f0000 : "APPSBLENV"
[    0.633743] 0x0000000f0000-0x000000170000 : "APPSBL"
[    0.638910] 0x000000170000-0x000000180000 : "ART"
[    0.644146] 0x000000180000-0x000000580000 : "kernel"
[    0.648681] 0x000000580000-0x000001000000 : "rootfs"
[    0.653783] mtd: device 9 (rootfs) set to be root filesystem
[    0.658304] 1 squashfs-split partitions found on MTD device rootfs
[    0.663763] 0x000000960000-0x000001000000 : "rootfs_data"
[    0.670459] 0x000000180000-0x000001000000 : "firmware"
[    0.676553] libphy: ipq40xx_mdio: probed
[    0.684183] Unable to handle kernel NULL pointer dereference at virtual address 000000a4
[    0.684303] pgd = c0204000
[    0.692365] [000000a4] *pgd=00000000
[    0.694915] Internal error: Oops: 5 [#1] SMP ARM
[    0.698618] Modules linked in:
[    0.703223] CPU: 3 PID: 1 Comm: swapper/0 Not tainted 4.14.66 #0
[    0.706086] Hardware name: Generic DT based system
[    0.712250] task: cf830000 task.stack: cf82e000
[    0.716859] PC is at ar40xx_probe+0x318/0x738
[    0.721278] LR is at ar40xx_probe+0x2fc/0x738
[    0.725788] pc : [<c05a60b8>]    lr : [<c05a609c>]    psr: 60000013
[    0.730131] sp : cf82fdf8  ip : cfde62e4  fp : 00000000
[    0.736206] r10: cf94ee00  r9 : c032b338  r8 : 00000000
[    0.741416] r7 : c0a5c5b4  r6 : cf94ee10  r5 : cfdf708c  r4 : cfb88010
[    0.746626] r3 : cfb881e4  r2 : 00000000  r1 : 00000000  r0 : cfb88010
[    0.753226] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
[    0.759736] Control: 10c5387d  Table: 8020406a  DAC: 00000051
[    0.766938] Process swapper/0 (pid: 1, stack limit = 0xcf82e210)
[    0.772668] Stack: (0xcf82fdf8 to 0xcf830000)
[    0.778744] fde0:                                                       00000000 000016d7
[    0.783007] fe00: cf995540 cfb881e4 cf995540 00000004 00098000 000987ff cfdf7438 00000200
[    0.791168] fe20: 00000000 00000000 00000000 00000000 0c000000 0c07ffff cfdf70e4 00000200
[    0.799327] fe40: 00000000 00000000 00000000 00000000 c0a197fc cf94ee10 c0a197fc c0a5b92c
[    0.807488] fe60: 00000000 00000000 c0a197fc 00000000 00000000 c0547c5c c0a5b928 cf94ee10
[    0.815646] fe80: c0a5b92c c054669c cf94ee10 c0a197fc cf94ee44 00000000 00000007 00000059
[    0.823808] fea0: c0936ed4 c0546888 00000000 c0a197fc c05467fc c0544e30 cf817558 cf8f7e34
[    0.831966] fec0: c0a197fc cf98a980 c0a168f0 c0545dac c07fa5d4 c0916490 c0a197fc c0a197fc
[    0.840127] fee0: 00000000 c09164a0 ffffe000 c0546fcc c0a03c08 00000000 c09164a0 c03019fc
[    0.848286] ff00: cf82ff24 00000000 00000000 c0839100 cfffce40 c0839160 0000005a c0839160
[    0.856446] ff20: cfffce52 c0331194 c0838a6c c07f0434 00000006 00000006 c07cae30 00000000
[    0.864605] ff40: c07d3f28 c07caea4 cfffce52 c9571f9e 00000000 c0a277c0 c0a277c0 c092c834
[    0.872765] ff60: c092c83c 00000007 00000059 c0936ed4 00000000 c0900dd8 00000006 00000006
[    0.880923] ff80: 00000000 c09005ac 00000000 c070e87c 00000000 00000000 00000000 00000000
[    0.889084] ffa0: 00000000 c070e884 00000000 c0307928 00000000 00000000 00000000 00000000
[    0.897242] ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    0.905404] ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[    0.913580] [<c05a60b8>] (ar40xx_probe) from [<c0547c5c>] (platform_drv_probe+0x34/0x70)
[    0.921727] [<c0547c5c>] (platform_drv_probe) from [<c054669c>] (really_probe+0x114/0x274)
[    0.929884] [<c054669c>] (really_probe) from [<c0546888>] (__driver_attach+0x8c/0xb0)
[    0.937956] [<c0546888>] (__driver_attach) from [<c0544e30>] (bus_for_each_dev+0x4c/0xa0)
[    0.945857] [<c0544e30>] (bus_for_each_dev) from [<c0545dac>] (bus_add_driver+0xe8/0x200)
[    0.954015] [<c0545dac>] (bus_add_driver) from [<c0546fcc>] (driver_register+0xa8/0xe4)
[    0.962175] [<c0546fcc>] (driver_register) from [<c03019fc>] (do_one_initcall+0xc0/0x184)
[    0.969993] [<c03019fc>] (do_one_initcall) from [<c0900dd8>] (kernel_init_freeable+0x13c/0x1d0)
[    0.978327] [<c0900dd8>] (kernel_init_freeable) from [<c070e884>] (kernel_init+0x8/0x114)
[    0.986834] [<c070e884>] (kernel_init) from [<c0307928>] (ret_from_fork+0x14/0x2c)
[    0.995161] Code: e58431f4 e3a01000 e1a00004 e58d300c (e59230a4) 
[    1.002772] ---[ end trace 0e01f897d7b0c443 ]---
[    1.008791] Kernel panic - not syncing: Fatal exception
[    1.013475] CPU2: stopping
[    1.018412] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G      D         4.14.66 #0
[    1.021191] Hardware name: Generic DT based system
[    1.028413] [<c030eaf0>] (unwind_backtrace) from [<c030b03c>] (show_stack+0x10/0x14)
[    1.033187] [<c030b03c>] (show_stack) from [<c06fb760>] (dump_stack+0x88/0x9c)
[    1.041081] [<c06fb760>] (dump_stack) from [<c030ddf8>] (handle_IPI+0xe4/0x18c)
[    1.048109] [<c030ddf8>] (handle_IPI) from [<c0301440>] (gic_handle_irq+0x8c/0x90)
[    1.055315] [<c0301440>] (gic_handle_irq) from [<c030bb8c>] (__irq_svc+0x6c/0x90)
[    1.062948] Exception stack(0xcf85df80 to 0xcf85dfc8)
[    1.070503] df80: 00000001 00000000 00000000 c0313f40 ffffe000 c0a03c70 c0a03c24 00000000
[    1.075542] dfa0: 00000000 410fc075 00000000 00000000 cf85dfc8 cf85dfd0 c03081e0 c03081e4
[    1.083695] dfc0: 60000013 ffffffff
[    1.091855] [<c030bb8c>] (__irq_svc) from [<c03081e4>] (arch_cpu_idle+0x34/0x38)
[    1.095163] [<c03081e4>] (arch_cpu_idle) from [<c0349638>] (do_idle+0xdc/0x1a0)
[    1.102799] [<c0349638>] (do_idle) from [<c0349958>] (cpu_startup_entry+0x18/0x1c)
[    1.109828] [<c0349958>] (cpu_startup_entry) from [<8030172c>] (0x8030172c)
[    1.117462] CPU1: stopping
[    1.124316] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G      D         4.14.66 #0
[    1.127093] Hardware name: Generic DT based system
[    1.134313] [<c030eaf0>] (unwind_backtrace) from [<c030b03c>] (show_stack+0x10/0x14)
[    1.139086] [<c030b03c>] (show_stack) from [<c06fb760>] (dump_stack+0x88/0x9c)
[    1.146985] [<c06fb760>] (dump_stack) from [<c030ddf8>] (handle_IPI+0xe4/0x18c)
[    1.154011] [<c030ddf8>] (handle_IPI) from [<c0301440>] (gic_handle_irq+0x8c/0x90)
[    1.161216] [<c0301440>] (gic_handle_irq) from [<c030bb8c>] (__irq_svc+0x6c/0x90)
[    1.168849] Exception stack(0xcf85bf80 to 0xcf85bfc8)
[    1.176406] bf80: 00000001 00000000 00000000 c0313f40 ffffe000 c0a03c70 c0a03c24 00000000
[    1.181446] bfa0: 00000000 410fc075 00000000 00000000 cf85bfc8 cf85bfd0 c03081e0 c03081e4
[    1.189597] bfc0: 60000013 ffffffff
[    1.197757] [<c030bb8c>] (__irq_svc) from [<c03081e4>] (arch_cpu_idle+0x34/0x38)
[    1.201063] [<c03081e4>] (arch_cpu_idle) from [<c0349638>] (do_idle+0xdc/0x1a0)
[    1.208699] [<c0349638>] (do_idle) from [<c0349958>] (cpu_startup_entry+0x18/0x1c)
[    1.215731] [<c0349958>] (cpu_startup_entry) from [<8030172c>] (0x8030172c)
[    1.223365] CPU0: stopping
[    1.230218] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G      D         4.14.66 #0
[    1.232997] Hardware name: Generic DT based system
[    1.240214] [<c030eaf0>] (unwind_backtrace) from [<c030b03c>] (show_stack+0x10/0x14)
[    1.244988] [<c030b03c>] (show_stack) from [<c06fb760>] (dump_stack+0x88/0x9c)
[    1.252884] [<c06fb760>] (dump_stack) from [<c030ddf8>] (handle_IPI+0xe4/0x18c)
[    1.259914] [<c030ddf8>] (handle_IPI) from [<c0301440>] (gic_handle_irq+0x8c/0x90)
[    1.267121] [<c0301440>] (gic_handle_irq) from [<c030bb8c>] (__irq_svc+0x6c/0x90)
[    1.274752] Exception stack(0xc0a01f48 to 0xc0a01f90)
[    1.282307] 1f40:                   00000001 00000000 00000000 c0313f40 ffffe000 c0a03c70
[    1.287347] 1f60: c0a03c24 00000000 00000000 c092ca28 cfffce00 00000000 c0a01f90 c0a01f98
[    1.295504] 1f80: c03081e0 c03081e4 60000013 ffffffff
[    1.303664] [<c030bb8c>] (__irq_svc) from [<c03081e4>] (arch_cpu_idle+0x34/0x38)
[    1.308700] [<c03081e4>] (arch_cpu_idle) from [<c0349638>] (do_idle+0xdc/0x1a0)
[    1.316164] [<c0349638>] (do_idle) from [<c0349958>] (cpu_startup_entry+0x18/0x1c)
[    1.323200] [<c0349958>] (cpu_startup_entry) from [<c0900c90>] (start_kernel+0x3b4/0x3c0)
[    1.330839] [<c0900c90>] (start_kernel) from [<8020807c>] (0x8020807c)
[    1.339083] Rebooting in 1 seconds..
[    3.345697] Reboot failed -- System halted

but, if i enter the uboot, and type bootipq manually, the openwrt firmware will work fine。。
it seems that uboot must initialize the ESS and phy before load kernel.

Regards,


#2

Hi roboidler

Have you been able to solve this issue? I'm getting exactly the same errors, my board only works if I stop u-boot and use bootipq manually.


#3

me too,solve this issue?


#4

no, it could be missing pinctrl settings for the mdio/mdc pins as well as a QCA8075 that's still left in reset (needs a gpiohog). I think https://lists.openwrt.org/pipermail/openwrt-devel/2017-April/007106.html has the values, but unless this is tested an confirmed that I don't see how to progress.