diff options
| -rw-r--r-- | drivers/firewire/ohci.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/firewire/ohci.c b/drivers/firewire/ohci.c index f51d376d10ba..c2f5117fd8cb 100644 --- a/drivers/firewire/ohci.c +++ b/drivers/firewire/ohci.c | |||
| @@ -3675,6 +3675,11 @@ static int pci_probe(struct pci_dev *dev, | |||
| 3675 | 3675 | ||
| 3676 | reg_write(ohci, OHCI1394_IsoXmitIntMaskSet, ~0); | 3676 | reg_write(ohci, OHCI1394_IsoXmitIntMaskSet, ~0); |
| 3677 | ohci->it_context_support = reg_read(ohci, OHCI1394_IsoXmitIntMaskSet); | 3677 | ohci->it_context_support = reg_read(ohci, OHCI1394_IsoXmitIntMaskSet); |
| 3678 | /* JMicron JMB38x often shows 0 at first read, just ignore it */ | ||
| 3679 | if (!ohci->it_context_support) { | ||
| 3680 | ohci_notice(ohci, "overriding IsoXmitIntMask\n"); | ||
| 3681 | ohci->it_context_support = 0xf; | ||
| 3682 | } | ||
| 3678 | reg_write(ohci, OHCI1394_IsoXmitIntMaskClear, ~0); | 3683 | reg_write(ohci, OHCI1394_IsoXmitIntMaskClear, ~0); |
| 3679 | ohci->it_context_mask = ohci->it_context_support; | 3684 | ohci->it_context_mask = ohci->it_context_support; |
| 3680 | ohci->n_it = hweight32(ohci->it_context_mask); | 3685 | ohci->n_it = hweight32(ohci->it_context_mask); |
