diff options
Diffstat (limited to 'drivers/pci/hotplug/pciehp_hpc.c')
-rw-r--r-- | drivers/pci/hotplug/pciehp_hpc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/pci/hotplug/pciehp_hpc.c b/drivers/pci/hotplug/pciehp_hpc.c index 3efb1296290d..49883c59756e 100644 --- a/drivers/pci/hotplug/pciehp_hpc.c +++ b/drivers/pci/hotplug/pciehp_hpc.c | |||
@@ -301,7 +301,10 @@ static int pcie_write_cmd(struct controller *ctrl, u16 cmd, u16 mask) | |||
301 | } | 301 | } |
302 | 302 | ||
303 | slot_ctrl &= ~mask; | 303 | slot_ctrl &= ~mask; |
304 | slot_ctrl |= ((cmd & mask) | CMD_CMPL_INTR_ENABLE); | 304 | slot_ctrl |= (cmd & mask); |
305 | /* Don't enable command completed if caller is changing it. */ | ||
306 | if (!(mask & CMD_CMPL_INTR_ENABLE)) | ||
307 | slot_ctrl |= CMD_CMPL_INTR_ENABLE; | ||
305 | 308 | ||
306 | ctrl->cmd_busy = 1; | 309 | ctrl->cmd_busy = 1; |
307 | smp_mb(); | 310 | smp_mb(); |