PCI: pciehp: Don't enable HPIE when resuming in poll mode
[ Upstream commit 527664f738afb6f2c58022cd35e63801e5dc7aec ] PCIe hotplug can operate in poll mode without interrupt handlers using a polling kthread only.eb34da60ed
("PCI: pciehp: Disable hotplug interrupt during suspend") failed to consider that and enables HPIE (Hot-Plug Interrupt Enable) unconditionally when resuming the Port. Only set HPIE if non-poll mode is in use. This makes pcie_enable_interrupt() match how pcie_enable_notification() already handles HPIE. Link: https://lore.kernel.org/r/20250321162114.3939-1-ilpo.jarvinen@linux.intel.com Fixes:eb34da60ed
("PCI: pciehp: Disable hotplug interrupt during suspend") Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Lukas Wunner <lukas@wunner.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
d953e2cd59
commit
be78c69ca7
@ -840,7 +840,9 @@ void pcie_enable_interrupt(struct controller *ctrl)
|
|||||||
{
|
{
|
||||||
u16 mask;
|
u16 mask;
|
||||||
|
|
||||||
mask = PCI_EXP_SLTCTL_HPIE | PCI_EXP_SLTCTL_DLLSCE;
|
mask = PCI_EXP_SLTCTL_DLLSCE;
|
||||||
|
if (!pciehp_poll_mode)
|
||||||
|
mask |= PCI_EXP_SLTCTL_HPIE;
|
||||||
pcie_write_cmd(ctrl, mask, mask);
|
pcie_write_cmd(ctrl, mask, mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user