|
@@ -483,6 +483,9 @@ static int ohci_init (struct ohci_hcd *ohci)
|
|
int ret;
|
|
int ret;
|
|
struct usb_hcd *hcd = ohci_to_hcd(ohci);
|
|
struct usb_hcd *hcd = ohci_to_hcd(ohci);
|
|
|
|
|
|
|
|
+ if (distrust_firmware)
|
|
|
|
+ ohci->flags |= OHCI_QUIRK_HUB_POWER;
|
|
|
|
+
|
|
disable (ohci);
|
|
disable (ohci);
|
|
ohci->regs = hcd->regs;
|
|
ohci->regs = hcd->regs;
|
|
|
|
|
|
@@ -689,7 +692,8 @@ retry:
|
|
temp |= RH_A_NOCP;
|
|
temp |= RH_A_NOCP;
|
|
temp &= ~(RH_A_POTPGT | RH_A_NPS);
|
|
temp &= ~(RH_A_POTPGT | RH_A_NPS);
|
|
ohci_writel (ohci, temp, &ohci->regs->roothub.a);
|
|
ohci_writel (ohci, temp, &ohci->regs->roothub.a);
|
|
- } else if ((ohci->flags & OHCI_QUIRK_AMD756) || distrust_firmware) {
|
|
|
|
|
|
+ } else if ((ohci->flags & OHCI_QUIRK_AMD756) ||
|
|
|
|
+ (ohci->flags & OHCI_QUIRK_HUB_POWER)) {
|
|
/* hub power always on; required for AMD-756 and some
|
|
/* hub power always on; required for AMD-756 and some
|
|
* Mac platforms. ganged overcurrent reporting, if any.
|
|
* Mac platforms. ganged overcurrent reporting, if any.
|
|
*/
|
|
*/
|