PERFORCE change 137211 for review

Hans Petter Selasky hselasky at FreeBSD.org
Sun Mar 9 09:05:00 UTC 2008


http://perforce.freebsd.org/chv.cgi?CH=137211

Change 137211 by hselasky at hselasky_laptop001 on 2008/03/09 09:04:40

	
	EHCI bugfix from Ivan Voras.
	
	See "usb/120017: CS5536 (AMD Geode) USB 2.0 quirk".
	
	PR:		usb/120017

Affected files ...

.. //depot/projects/usb/src/sys/dev/usb/ehci_pci.c#30 edit

Differences ...

==== //depot/projects/usb/src/sys/dev/usb/ehci_pci.c#30 (text+ko) ====

@@ -150,6 +150,9 @@
 	if (device_id == 0x10227463)
 		return "AMD 8111 USB 2.0 controller";
 
+	if (device_id == 0x20951022)
+		return ("AMD CS5536 (Geode) USB 2.0 controller");
+
 	if (device_id == 0x43451002)
 		return "ATI SB200 USB 2.0 controller";
 	if (device_id == 0x43731002)
@@ -235,9 +238,14 @@
 	case PCI_USBREV_PRE_1_0:
 	case PCI_USBREV_1_0:
 	case PCI_USBREV_1_1:
-		sc->sc_bus.usbrev = USBREV_UNKNOWN;
-		device_printf(self, "pre-2.0 USB rev\n");
-		return (ENXIO);
+		/*
+		 * NOTE: some EHCI USB controllers have the wrong USB
+		 * revision number. It appears those controllers are
+		 * fully compliant so we just ignore this value in
+		 * some common cases.
+		 */
+		device_printf(self, "pre-2.0 USB revision (ignored)\n");
+		/* fallthrough */
 	case PCI_USBREV_2_0:
 		sc->sc_bus.usbrev = USBREV_2_0;
 		break;


More information about the p4-projects mailing list