• Peter Hurley's avatar
    firewire: ohci: Check LPS before register access on pci removal · 8db49149
    Peter Hurley authored
    A pci device can be removed while in its suspended state. If the ohci
    host controller is suspended, the PHY is also in low-power mode and
    LPS is disabled. If LPS is disabled, most of the host registers aren't
    accessible, including IntMaskClear. Furthermore, access to these registers
    when LPS is disabled can cause hard lockups on some hardware. Since
    interrupts are already disabled in this mode, further action is
    unnecessary.
    
    Test LPS before attempting to write IntMaskClear to disable interrupts.
    
    [Stefan R: whitespace changes]
    Signed-off-by: default avatarPeter Hurley <peter@hurleysoftware.com>
    Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
    8db49149
ohci.c 104 KB