PCIe Issue after kernel upgrade
Mar 04, 2024
Hi All,
We have a working PCIe driver in L4T 32.2.1. We upgraded it to L4T32.6.1 . we used pci_alloc_irq_vectors (xx,xx,xx, PCI_IRQ_MSI) to allocate interrupt. Our application running fine and i could see the interrupt under /proc/interrupts/.
While we are giving the soft reboot, we got the below error and kernel crashed.
28.460975] Call trace:
[ 28.461023] [] dump_backtrace+0x0/0x198
[ 28.461111] [] show_stack+0x24/0x30
[ 28.461195] [] dump_stack+0xa0/0xc4
[ 28.461280] [] panic+0x12c/0x2a8
[ 28.461364] [] watchdog_unpark_threads+0x0/0x98
[ 28.461464] [] __hrtimer_run_queues+0xd8/0x360
[ 28.461558] [] hrtimer_interrupt+0xa8/0x1e0
[ 28.461808] [] arch_timer_handler_phys+0x38/0x58
[ 28.462287] [] handle_percpu_devid_irq+0x90/0x2b0
[ 28.462785] [] generic_handle_irq+0x34/0x50
[ 28.463221] [] __handle_domain_irq+0x68/0xc0
[ 28.465567] [] gic_handle_irq+0x5c/0xb0
[ 28.470906] [] el1_irq+0xe8/0x194
[ 28.476067] [] irq_exit+0xd0/0x118
[ 28.480878] [] __handle_domain_irq+0x6c/0xc0
[ 28.486738] [] gic_handle_irq+0x5c/0xb0
[ 28.491817] [] el1_irq+0xe8/0x194
[ 28.496893] [] **dw_pcie_msi_init**+0x94/0x1a8
[ 28.502665] [] tegra_pcie_dw_host_init+0x858/0xb28
[ 28.508968] [] dw_pcie_host_init+0x230/0x530
[ 28.514920] [] tegra_pcie_dw_runtime_resume+0x1bc/0x370
[ 28.522004] [] pm_generic_runtime_resume+0x3c/0x58
[ 28.528308] [] __genpd_runtime_resume+0x38/0xa0
[ 28.534692] [] genpd_runtime_resume+0xa4/0x210
[ 28.540639] [] __rpm_callback+0x74/0xa0
[ 28.546063] [] rpm_callback+0x34/0x98
[ 28.551314] [] rpm_resume+0x470/0x710
[ 28.556393] [] __pm_runtime_resume+0x4c/0x70
[ 28.562081] [] tegra_pcie_dw_probe+0x8e4/0xbb8
[ 28.568292] [] platform_drv_probe+0x60/0xc0
[ 28.573979] [] driver_probe_device+0x298/0x448
[ 28.579841] [] __driver_attach+0xdc/0x128
[ 28.585181] [] bus_for_each_dev+0x5c/0xa8
[ 28.591214] [] driver_attach+0x30/0x40
[ 28.596293] [] bus_add_driver+0x20c/0x2a8
[ 28.601896] [] driver_register+0x6c/0x110
[ 28.607927] [] __platform_driver_register+0x5c/0x68
[ 28.614409] [] tegra_pcie_rp_init+0x18/0x20
[ 28.619918] [] do_one_initcall+0x44/0x130
[ 28.625955] [] kernel_init_freeable+0x1a0/0x244
[ 28.632077] [] kernel_init+0x18/0x108
[ 28.637326] [] ret_from_fork+0x10/0x30
Looks there is some issue in the ISR. Please advice us what we are missing