merged. Bruce
In message: [linux-yocto][linux-yocto v5.15/standard/nxp-sdk-5.15/nxp-soc & v5.15/standard/preempt-rt/nxp-sdk-5.15/nxp-soc][PATCH 1/3] irqchip: imx-irqsteer: Block the runtime PM on 10/05/2022 Xiaolei Wang wrote: > The irqsteer's runtime PM has to be enabled otherwise the probe of > some devices (such as dpu) will fail because of the failure of > irq_chip_pm_get(). > But we can't allow the irqsteer to really enter the suspend state > because it will break the kdump with a call trace like below. > > Internal error: synchronous external abort: 96000210 [#1] PREEMPT SMP > Modules linked in: sch_fq_codel > CPU: 3 PID: 3772 Comm: sh Kdump: loaded Not tainted 5.4.87-yocto-standard #1 > Hardware name: Freescale i.MX8QM MEK (DT) > pstate: 40000085 (nZcv daIf -PAN -UAO) > pc : imx_irqsteer_irq_mask+0x50/0x90 > lr : imx_irqsteer_irq_mask+0x40/0x90 > sp : ffff800014b7b9e0 > x29: ffff800014b7b9e0 x28: ffff0008e5800000 > x27: 0000000000000000 x26: 0000000000000000 > x25: 0000000000000007 x24: ffff800011513398 > x23: ffff800014b7ba88 x22: ffff0008ef1fadd8 > x21: ffff0008ef1fac80 x20: ffff0008eecd8858 > x19: 0000000000000001 x18: 0000000000000020 > x17: 0000000000000000 x16: 0000000000000000 > x15: ffff0008e5800470 x14: 0000000080000085 > x13: ffff800010192a48 x12: ffff800011ed8000 > x11: ffff800011ed8b50 x10: 00000000000c01d2 > x9 : 000000002769dc82 x8 : 00000000000084ab > x7 : ffff800011ed8b68 x6 : 0000000000000001 > x5 : 0000000016f0f41b x4 : 8888888888888889 > x3 : ffff800013677000 x2 : ffff800013677004 > x1 : 0000000000000080 x0 : 0000000000000080 > Call trace: > imx_irqsteer_irq_mask+0x50/0x90 > machine_crash_shutdown+0xb4/0x10c > __crash_kexec+0x78/0x12c > panic+0x180/0x370 > sysrq_handle_reboot+0x0/0x3c > __handle_sysrq+0xf0/0x1d0 > write_sysrq_trigger+0xac/0xcc > proc_reg_write+0x8c/0x110 > __vfs_write+0x4c/0x90 > vfs_write+0xe8/0x1d0 > ksys_write+0x7c/0x104 > __arm64_sys_write+0x28/0x3c > el0_svc_common.constprop.0+0x7c/0x1b4 > el0_svc_handler+0x54/0xc0 > el0_svc+0x8/0x204 > Code: f94092a3 531e7662 aa0003e1 8b22c062 (b9400040) > > So enable the runtime PM with pm_runtime_enable(), but block the suspend of > irqsteer with pm_runtime_forbid(). > > Signed-off-by: Xiaolei Wang <[email protected]> > Signed-off-by: Bruce Ashfield <[email protected]> > --- > drivers/irqchip/irq-imx-irqsteer.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/irqchip/irq-imx-irqsteer.c > b/drivers/irqchip/irq-imx-irqsteer.c > index a5165579bed1..df6c37c3e8e7 100644 > --- a/drivers/irqchip/irq-imx-irqsteer.c > +++ b/drivers/irqchip/irq-imx-irqsteer.c > @@ -298,6 +298,8 @@ static int imx_irqsteer_probe(struct platform_device > *pdev) > platform_set_drvdata(pdev, data); > > pm_runtime_enable(&pdev->dev); > + pm_runtime_forbid(&pdev->dev); > + > return 0; > out: > clk_disable_unprepare(data->ipg_clk); > -- > 2.25.1 >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#11295): https://lists.yoctoproject.org/g/linux-yocto/message/11295 Mute This Topic: https://lists.yoctoproject.org/mt/91008124/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
