Re: Fwd: EHCI driver problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Please use Reply-to-All so that your messages are sent to the mailing 
list as well as to me.  And turn off HTML-formatted text so that the 
list server will accept the message.

On Fri, 28 Oct 2011, Anton Alekseev wrote:

> Hello.
> 
> I've got ATI EHCI :(
> 
> All logs are in attachments.
> 
> I've also added logs from laptop with INTEL EHCI attachments (names
> containing *INTEL*) where everything works just fine, as you wrote in last
> message.

You didn't have to send 12 different logs!  All I asked for was the 
output from "lspci -n".

Anyway, here's a patch which will activate the broken-periodic
workaround on your ATI system.  Let's see how well it works.

Alan Stern



Index: usb-3.1/drivers/usb/host/ehci-pci.c
===================================================================
--- usb-3.1.orig/drivers/usb/host/ehci-pci.c
+++ usb-3.1/drivers/usb/host/ehci-pci.c
@@ -119,6 +119,18 @@ static int ehci_pci_setup(struct usb_hcd
 				"dummy qh workaround\n");
 	}
 
+	/*
+	 * Some controllers refuse to turn off the periodic schedule if it
+	 * hasn't been on for long enough.  The workaround simply delays until
+	 * the schedule has been on for at least 1 ms.
+	 */
+	if ((pdev->vendor == PCI_VENDOR_ID_INTEL && pdev->device == 0x27cc) ||
+	    (pdev->vendor == PCI_VENDOR_ID_ATI && pdev->device == 0x4396)) {
+		ehci->broken_periodic = 1;
+		ehci_info(ehci, "using broken periodic workaround\n");
+	}
+
+
 	/* data structure init */
 	retval = ehci_init(hcd);
 	if (retval)
@@ -131,10 +143,6 @@ static int ehci_pci_setup(struct usb_hcd
 	case PCI_VENDOR_ID_INTEL:
 		ehci->need_io_watchdog = 0;
 		ehci->fs_i_thresh = 1;
-		if (pdev->device == 0x27cc) {
-			ehci->broken_periodic = 1;
-			ehci_info(ehci, "using broken periodic workaround\n");
-		}
 		if (pdev->device == 0x0806 || pdev->device == 0x0811
 				|| pdev->device == 0x0829) {
 			ehci_info(ehci, "disable lpm for langwell/penwell\n");

--
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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux