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 <krh@redhat.com> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
This commit is contained in:
Родитель
49e1179b16
Коммит
e254a4b45f
|
@ -1943,7 +1943,8 @@ static void pci_remove(struct pci_dev *dev)
|
||||||
struct fw_ohci *ohci;
|
struct fw_ohci *ohci;
|
||||||
|
|
||||||
ohci = pci_get_drvdata(dev);
|
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);
|
fw_core_remove_card(&ohci->card);
|
||||||
|
|
||||||
/* FIXME: Fail all pending packets here, now that the upper
|
/* FIXME: Fail all pending packets here, now that the upper
|
||||||
|
|
Загрузка…
Ссылка в новой задаче