--- zzzz-none-000/linux-2.6.39.4/drivers/usb/host/ehci-pci.c 2011-08-03 19:43:28.000000000 +0000 +++ puma6-atom-6490-729/linux-2.6.39.4/drivers/usb/host/ehci-pci.c 2021-11-10 13:38:17.000000000 +0000 @@ -18,6 +18,16 @@ * Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/****************************************************************** + + Includes Intel Corporation's changes/modifications dated: 07/2011. + Changed/modified portions - Copyright(c) 2011, Intel Corporation. + +******************************************************************/ + + + #ifndef CONFIG_PCI #error "This file is PCI bus glue. CONFIG_PCI must be defined." #endif @@ -54,6 +64,16 @@ u32 temp; int retval; +#ifdef CONFIG_GEN3_USB + /* + * CE5300 USB controller has some extensions similar with Moorestown + * such as host mode control, device speed report and power management. + * So set ehci->has_hostpc to utilize the support code for Moorestown. + */ + if((pdev->device == 0x101) && (pdev->revision >= 0x6)) + ehci->has_hostpc = 1; +#endif + switch (pdev->vendor) { case PCI_VENDOR_ID_TOSHIBA_2: /* celleb's companion chip */ @@ -147,6 +167,9 @@ break; case PCI_VENDOR_ID_TDI: if (pdev->device == PCI_DEVICE_ID_TDI_EHCI) { +#ifdef CONFIG_GEN3_USB + ehci->has_lpm = 0; +#endif hcd->has_tt = 1; tdi_reset(ehci); }