On Fri, 2010-06-25 at 14:01 -0400, Alan Stern wrote: > This patch (as1383) takes the powermac-specific code from the PCI HCD > glue layer and encapsulates it in its own subroutine. > > Signed-off-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> Acked-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> > > --- > > Index: usb-2.6/drivers/usb/core/hcd-pci.c > =================================================================== > --- usb-2.6.orig/drivers/usb/core/hcd-pci.c > +++ usb-2.6/drivers/usb/core/hcd-pci.c > @@ -332,6 +332,27 @@ EXPORT_SYMBOL_GPL(usb_hcd_pci_shutdown); > > #ifdef CONFIG_PM_SLEEP > > +#ifdef CONFIG_PPC_PMAC > +static void powermac_set_asic(struct pci_dev *pci_dev, int enable) > +{ > + /* Enanble or disable ASIC clocks for USB */ > + if (machine_is(powermac)) { > + struct device_node *of_node; > + > + of_node = pci_device_to_OF_node(pci_dev); > + if (of_node) > + pmac_call_feature(PMAC_FTR_USB_ENABLE, > + of_node, 0, enable); > + } > +} > + > +#else > + > +static inline void powermac_set_asic(struct pci_dev *pci_dev, int enable) > +{} > + > +#endif /* CONFIG_PPC_PMAC */ > + > static int check_root_hub_suspended(struct device *dev) > { > struct pci_dev *pci_dev = to_pci_dev(dev); > @@ -416,16 +437,7 @@ static int hcd_pci_suspend_noirq(struct > return retval; > } > > -#ifdef CONFIG_PPC_PMAC > - /* Disable ASIC clocks for USB */ > - if (machine_is(powermac)) { > - struct device_node *of_node; > - > - of_node = pci_device_to_OF_node(pci_dev); > - if (of_node) > - pmac_call_feature(PMAC_FTR_USB_ENABLE, of_node, 0, 0); > - } > -#endif > + powermac_set_asic(pci_dev, 0); > return retval; > } > > @@ -433,17 +445,7 @@ static int hcd_pci_resume_noirq(struct d > { > struct pci_dev *pci_dev = to_pci_dev(dev); > > -#ifdef CONFIG_PPC_PMAC > - /* Reenable ASIC clocks for USB */ > - if (machine_is(powermac)) { > - struct device_node *of_node; > - > - of_node = pci_device_to_OF_node(pci_dev); > - if (of_node) > - pmac_call_feature(PMAC_FTR_USB_ENABLE, > - of_node, 0, 1); > - } > -#endif > + powermac_set_asic(pci_dev, 1); > > /* Go back to D0 and disable remote wakeup */ > pci_back_from_sleep(pci_dev); -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html