From: Kristian Høgsberg Date: Wed, 7 Mar 2007 17:12:38 +0000 (-0500) Subject: firewire: Clear all interrupt bits before shutting down. X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=e254a4b45f265d9df120b83d5c2c9437902b601b;p=linux-beck.git firewire: Clear all interrupt bits before shutting down. Some flaky controllers doesn't honor the masterIntEnable bits and can generate bus reset events even if that bit is cleared. Signed-off-by: Kristian Høgsberg Signed-off-by: Stefan Richter --- diff --git a/drivers/firewire/fw-ohci.c b/drivers/firewire/fw-ohci.c index 508154104328..37467923e98b 100644 --- a/drivers/firewire/fw-ohci.c +++ b/drivers/firewire/fw-ohci.c @@ -1943,7 +1943,8 @@ static void pci_remove(struct pci_dev *dev) struct fw_ohci *ohci; ohci = pci_get_drvdata(dev); - reg_write(ohci, OHCI1394_IntMaskClear, OHCI1394_masterIntEnable); + reg_write(ohci, OHCI1394_IntMaskClear, ~0); + flush_writes(ohci); fw_core_remove_card(&ohci->card); /* FIXME: Fail all pending packets here, now that the upper