diff options
Diffstat (limited to 'drivers/usb/host/ohci-q.c')
-rw-r--r-- | drivers/usb/host/ohci-q.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/usb/host/ohci-q.c b/drivers/usb/host/ohci-q.c index c90114a7727..e372306ed0d 100644 --- a/drivers/usb/host/ohci-q.c +++ b/drivers/usb/host/ohci-q.c | |||
@@ -1021,6 +1021,8 @@ rescan_this: | |||
1021 | 1021 | ||
1022 | if (ohci->ed_controltail) { | 1022 | if (ohci->ed_controltail) { |
1023 | command |= OHCI_CLF; | 1023 | command |= OHCI_CLF; |
1024 | if (ohci->flags & OHCI_QUIRK_ZFMICRO) | ||
1025 | mdelay(1); | ||
1024 | if (!(ohci->hc_control & OHCI_CTRL_CLE)) { | 1026 | if (!(ohci->hc_control & OHCI_CTRL_CLE)) { |
1025 | control |= OHCI_CTRL_CLE; | 1027 | control |= OHCI_CTRL_CLE; |
1026 | ohci_writel (ohci, 0, | 1028 | ohci_writel (ohci, 0, |
@@ -1029,6 +1031,8 @@ rescan_this: | |||
1029 | } | 1031 | } |
1030 | if (ohci->ed_bulktail) { | 1032 | if (ohci->ed_bulktail) { |
1031 | command |= OHCI_BLF; | 1033 | command |= OHCI_BLF; |
1034 | if (ohci->flags & OHCI_QUIRK_ZFMICRO) | ||
1035 | mdelay(1); | ||
1032 | if (!(ohci->hc_control & OHCI_CTRL_BLE)) { | 1036 | if (!(ohci->hc_control & OHCI_CTRL_BLE)) { |
1033 | control |= OHCI_CTRL_BLE; | 1037 | control |= OHCI_CTRL_BLE; |
1034 | ohci_writel (ohci, 0, | 1038 | ohci_writel (ohci, 0, |
@@ -1039,12 +1043,17 @@ rescan_this: | |||
1039 | /* CLE/BLE to enable, CLF/BLF to (maybe) kickstart */ | 1043 | /* CLE/BLE to enable, CLF/BLF to (maybe) kickstart */ |
1040 | if (control) { | 1044 | if (control) { |
1041 | ohci->hc_control |= control; | 1045 | ohci->hc_control |= control; |
1046 | if (ohci->flags & OHCI_QUIRK_ZFMICRO) | ||
1047 | mdelay(1); | ||
1042 | ohci_writel (ohci, ohci->hc_control, | 1048 | ohci_writel (ohci, ohci->hc_control, |
1043 | &ohci->regs->control); | 1049 | &ohci->regs->control); |
1044 | } | 1050 | } |
1045 | if (command) | 1051 | if (command) { |
1052 | if (ohci->flags & OHCI_QUIRK_ZFMICRO) | ||
1053 | mdelay(1); | ||
1046 | ohci_writel (ohci, command, &ohci->regs->cmdstatus); | 1054 | ohci_writel (ohci, command, &ohci->regs->cmdstatus); |
1047 | } | 1055 | } |
1056 | } | ||
1048 | } | 1057 | } |
1049 | 1058 | ||
1050 | 1059 | ||