On Thu, Aug 07, 2025 at 07:23:24PM +0800, Inochi Amaoto wrote: > When using NVME on SG2044, the NVME always complains "I/O tag XXX > (XXX) QID XX timeout, completion polled", which is caused by the > broken handler of the sg2042-msi driver. > > As PLIC driver can only setting affinity when enabling, the sg2042-msi > does not properly handled affinity setting previously and enable irq in > an unexpected executing path. > > Since the PCI template domain supports irq_startup/irq_shutdown, set > irq_chip_[startup/shutdown]_parent for irq_startup/irq_shutdown. So > the irq can be started properly. > Fixes: e96b93a97c90 ("irqchip/sg2042-msi: Add the Sophgo SG2044 MSI interrupt controller") > Reported-by: Han Gao <rabenda.cn@xxxxxxxxx> Closes ? > Suggested-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > Signed-off-by: Inochi Amaoto <inochiama@xxxxxxxxx> ... > #define SG2042_MSI_FLAGS_REQUIRED (MSI_FLAG_USE_DEF_DOM_OPS | \ > - MSI_FLAG_USE_DEF_CHIP_OPS) > + MSI_FLAG_USE_DEF_CHIP_OPS | \ > + MSI_FLAG_PCI_MSI_MASK_PARENT |\ Can we indent \ to be on the same column (using TABs)? > + MSI_FLAG_PCI_MSI_STARTUP_PARENT) ... > #define SG2044_MSI_FLAGS_REQUIRED (MSI_FLAG_USE_DEF_DOM_OPS | \ > - MSI_FLAG_USE_DEF_CHIP_OPS) > + MSI_FLAG_USE_DEF_CHIP_OPS | \ > + MSI_FLAG_PCI_MSI_MASK_PARENT |\ > + MSI_FLAG_PCI_MSI_STARTUP_PARENT) Ditto. -- With Best Regards, Andy Shevchenko