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] [<ffffff800808ba40>] dump_backtrace+0x0/0x198
[ 28.461111] [<ffffff800808c004>] show_stack+0x24/0x30
[ 28.461195] [<ffffff8008f62bac>] dump_stack+0xa0/0xc4
[ 28.461280] [<ffffff8008f5fc50>] panic+0x12c/0x2a8
[ 28.461364] [<ffffff8008180d30>] watchdog_unpark_threads+0x0/0x98
[ 28.461464] [<ffffff8008138f10>] __hrtimer_run_queues+0xd8/0x360
[ 28.461558] [<ffffff8008139860>] hrtimer_interrupt+0xa8/0x1e0
[ 28.461808] [<ffffff8008bfc4b0>] arch_timer_handler_phys+0x38/0x58
[ 28.462287] [<ffffff8008126410>] handle_percpu_devid_irq+0x90/0x2b0
[ 28.462785] [<ffffff80081208f4>] generic_handle_irq+0x34/0x50
[ 28.463221] [<ffffff8008120fe0>] __handle_domain_irq+0x68/0xc0
[ 28.465567] [<ffffff8008080d44>] gic_handle_irq+0x5c/0xb0
[ 28.470906] [<ffffff8008082c28>] el1_irq+0xe8/0x194
[ 28.476067] [<ffffff80080ba090>] irq_exit+0xd0/0x118
[ 28.480878] [<ffffff8008120fe4>] __handle_domain_irq+0x6c/0xc0
[ 28.486738] [<ffffff8008080d44>] gic_handle_irq+0x5c/0xb0
[ 28.491817] [<ffffff8008082c28>] el1_irq+0xe8/0x194
[ 28.496893] [<ffffff8008506e9c>] **dw_pcie_msi_init**+0x94/0x1a8
[ 28.502665] [<ffffff800850b298>] tegra_pcie_dw_host_init+0x858/0xb28
[ 28.508968] [<ffffff80085062e0>] dw_pcie_host_init+0x230/0x530
[ 28.514920] [<ffffff800850e0bc>] tegra_pcie_dw_runtime_resume+0x1bc/0x370
[ 28.522004] [<ffffff800878b74c>] pm_generic_runtime_resume+0x3c/0x58
[ 28.528308] [<ffffff8008799590>] __genpd_runtime_resume+0x38/0xa0
[ 28.534692] [<ffffff800879bd04>] genpd_runtime_resume+0xa4/0x210
[ 28.540639] [<ffffff800878da94>] __rpm_callback+0x74/0xa0
[ 28.546063] [<ffffff800878daf4>] rpm_callback+0x34/0x98
[ 28.551314] [<ffffff800878e558>] rpm_resume+0x470/0x710
[ 28.556393] [<ffffff800878f384>] __pm_runtime_resume+0x4c/0x70
[ 28.562081] [<ffffff800850bf1c>] tegra_pcie_dw_probe+0x8e4/0xbb8
[ 28.568292] [<ffffff80087830d8>] platform_drv_probe+0x60/0xc0
[ 28.573979] [<ffffff8008780908>] driver_probe_device+0x298/0x448
[ 28.579841] [<ffffff8008780b94>] __driver_attach+0xdc/0x128
[ 28.585181] [<ffffff800877e1c4>] bus_for_each_dev+0x5c/0xa8
[ 28.591214] [<ffffff800877ff48>] driver_attach+0x30/0x40
[ 28.596293] [<ffffff800877f97c>] bus_add_driver+0x20c/0x2a8
[ 28.601896] [<ffffff8008781acc>] driver_register+0x6c/0x110
[ 28.607927] [<ffffff8008783014>] __platform_driver_register+0x5c/0x68
[ 28.614409] [<ffffff800962eec0>] tegra_pcie_rp_init+0x18/0x20
[ 28.619918] [<ffffff8008083b3c>] do_one_initcall+0x44/0x130
[ 28.625955] [<ffffff8009600d20>] kernel_init_freeable+0x1a0/0x244
[ 28.632077] [<ffffff8008f65750>] kernel_init+0x18/0x108
[ 28.637326] [<ffffff80080838a0>] ret_from_fork+0x10/0x30
Looks there is some issue in the ISR. Please advice us what we are missing