AnsweredAssumed Answered

PCIe port MSI related kernel panic when booting with wireless card connected

Question asked by alexandrumoise on Apr 5, 2016

My setup consists of:

LS1021A RevB3 board

Linux 4.1.18 RT-enabled kernel.

 

kernel contains commits:

e08d8bf pci/layerscape: update MSI code for ls1021 rev2 MSI support

and

838bc54 pci_layerscape : Enable support of RT kernel in PCI-MSI interrupt handler

 

For PCIe port support.

 

I am confronted with the following kernel panic at boot when i boot with a wireless card connected to the PCIe slot:

 

------------[ cut here ]------------

WARNING: CPU: 0 PID: 0 at /home/mieke/builds/fsl/bitbake_build/tmp/work-shared/fsl-ls10xx/kernel-source/kernel/irq/handle.c:149 handle_irq_event_percpu+0x2ac/0x2b8()

irq 46 handler ls_pcie_msi_irq_handler+0x0/0xb8 enabled interrupts

Modules linked in: iwlmvm(+) mac80211 btusb btbcm btintel iwlwifi cfg80211 firmware_class

CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.1.18-experimental_preempt-rt #2

Hardware name: Freescale LS1021A

[<8001acd4>] (unwind_backtrace) from [<80014708>] (show_stack+0x20/0x24)

[<80014708>] (show_stack) from [<8082cf28>] (dump_stack+0x94/0xac)

[<8082cf28>] (dump_stack) from [<8002d9c4>] (warn_slowpath_common+0x94/0xc4)

[<8002d9c4>] (warn_slowpath_common) from [<8002da34>] (warn_slowpath_fmt+0x40/0x48)

[<8002da34>] (warn_slowpath_fmt) from [<8007d3a0>] (handle_irq_event_percpu+0x2ac/0x2b8)

[<8007d3a0>] (handle_irq_event_percpu) from [<8007d424>] (handle_irq_event+0x78/0xb8)

[<8007d424>] (handle_irq_event) from [<80080c90>] (handle_fasteoi_irq+0x138/0x24c)

[<80080c90>] (handle_fasteoi_irq) from [<8007c6d4>] (generic_handle_irq+0x3c/0x4c)

[<8007c6d4>] (generic_handle_irq) from [<8007ca08>] (__handle_domain_irq+0x8c/0xfc)

[<8007ca08>] (__handle_domain_irq) from [<80009478>] (gic_handle_irq+0x34/0x6c)

[<80009478>] (gic_handle_irq) from [<80015300>] (__irq_svc+0x40/0x88)

Exception stack(0x80bf5ef8 to 0x80bf5f40)

5ee0:                                                       00000001 00000000

5f00: 00000000 80026100 80bf4000 80bf98c8 80834eec 00000000 00000000 80c7f260

5f20: 80bf5f50 80bf5f4c 80bf5f50 80bf5f40 80010f5c 80010f60 60010013 ffffffff

[<80015300>] (__irq_svc) from [<80010f60>] (arch_cpu_idle+0x48/0x4c)

[<80010f60>] (arch_cpu_idle) from [<8006f4c0>] (cpu_startup_entry+0x424/0x4a0)

[<8006f4c0>] (cpu_startup_entry) from [<808277b8>] (rest_init+0x98/0x9c)

[<808277b8>] (rest_init) from [<80b08d6c>] (start_kernel+0x400/0x40c)

---[ end trace 0000000000000002 ]---

 

Also noteworthy that I have the following u-boot for the board:

U-Boot SPL 2015.01+ls1+g3281947 (Aug 31 2015 - 15:06:00)
U-Boot 2015.01+ls1+g3281947 (Aug 31 2015 - 15:06:00)
CPU:   Freescale LayerScape LS1021E, Version: 2.0, (0x87081120)

 

I had a Rev B2 board running the same bootloader, is it possible that the RevB3 board needs a separate bootloader?

Outcomes