Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 24 Aug 2002 00:02:37 -0400 (EDT)
From:      Colin Perkins <csp@csperkins.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   kern/41974: Update to USB UHCI device ids (Patch enclosed)
Message-ID:  <200208240402.g7O42bdM000510@purple.nge.isi.edu>

next in thread | raw e-mail | index | archive | help

>Number:         41974
>Category:       kern
>Synopsis:       Update to USB UHCI device ids (Patch enclosed)
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Sat Aug 24 08:30:05 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Colin Perkins
>Release:        FreeBSD 4.6-STABLE i386
>Organization:
USC/ISI
>Environment:
System: FreeBSD purple.nge.isi.edu 4.6-STABLE FreeBSD 4.6-STABLE #2: Fri Aug 23 23:45:28 EDT 2002 root@purple.nge.isi.edu:/usr/obj/usr/src/sys/PURPLE i386


>Description:

The ThinkPad X22 has an Intel ICH3 USB with 3 controllers. -STABLE doesn't
recognize the third controller. Patch enclosed to add device IDs.

>How-To-Repeat:

Boot system. Log shows:

  uhci2: <UHCI (generic) USB controller> port 0x1840-0x185f irq 11 at device 29.2 on pci0
  uhci2: (New UHCI DeviceId=0x24878086)
  usb2: <UHCI (generic) USB controller> on uhci2
  usb2: USB revision 1.0
  uhub2: (0x24878086) UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
  uhub2: 2 ports with 2 removable, self powered

With enclosed patch, it shows instead:

  uhci2: <Intel 82801CA/CAM (ICH3) USB controller USB-C> port 0x1840-0x185f irq 11 at device 29.2 on pci0
  usb2: <Intel 82801CA/CAM (ICH3) USB controller USB-C> on uhci2
  usb2: USB revision 1.0
  uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
  uhub2: 2 ports with 2 removable, self powered

which matches the device description shown by Win2k on same host. 

>Fix:

(patch against -STABLE from 22nd Aug)

*** uhci_pci.c.orig	Fri Aug 23 23:27:43 2002
--- uhci_pci.c	Fri Aug 23 23:41:20 2002
***************
*** 102,107 ****
--- 102,110 ----
  #define PCI_UHCI_DEVICEID_ICH3_B	0x24848086
  static const char *uhci_device_ich3_b = "Intel 82801CA/CAM (ICH3) USB controller USB-B";
  
+ #define PCI_UHCI_DEVICEID_ICH3_C	0x24878086
+ static const char *uhci_device_ich3_c = "Intel 82801CA/CAM (ICH3) USB controller USB-C";
+ 
  #define PCI_UHCI_DEVICEID_ICH4_A	0x24c28086
  static const char *uhci_device_ich4_a = "Intel 82801DB (ICH4) USB controller USB-A";
  
***************
*** 177,182 ****
--- 180,187 ----
  		return (uhci_device_ich3_a);
  	} else if (device_id == PCI_UHCI_DEVICEID_ICH3_B) {
  		return (uhci_device_ich3_b);
+ 	} else if (device_id == PCI_UHCI_DEVICEID_ICH3_C) {
+ 		return (uhci_device_ich3_c);
  	} else if (device_id == PCI_UHCI_DEVICEID_ICH4_A) {
  		return (uhci_device_ich4_a);
  	} else if (device_id == PCI_UHCI_DEVICEID_ICH4_B) {
***************
*** 281,286 ****
--- 286,295 ----
  		break;
  	case PCI_UHCI_DEVICEID_ICH3_B:
  		device_set_desc(sc->sc_bus.bdev, uhci_device_ich3_b);
+ 		sprintf(sc->sc_vendor, "Intel");
+ 		break;
+ 	case PCI_UHCI_DEVICEID_ICH3_C:
+ 		device_set_desc(sc->sc_bus.bdev, uhci_device_ich3_c);
  		sprintf(sc->sc_vendor, "Intel");
  		break;
  	case PCI_UHCI_DEVICEID_ICH4_A:


>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200208240402.g7O42bdM000510>