From owner-freebsd-bugs@FreeBSD.ORG Thu Nov 18 16:30:35 2004 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CFF8A16A4CE for ; Thu, 18 Nov 2004 16:30:35 +0000 (GMT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E3E243D5C for ; Thu, 18 Nov 2004 16:30:35 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.11/8.12.11) with ESMTP id iAIGUXte045011 for ; Thu, 18 Nov 2004 16:30:33 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.11/8.12.11/Submit) id iAIGUXDr044976; Thu, 18 Nov 2004 16:30:33 GMT (envelope-from gnats) Resent-Date: Thu, 18 Nov 2004 16:30:33 GMT Resent-Message-Id: <200411181630.iAIGUXDr044976@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Brian Candler Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7821D16A4CE for ; Thu, 18 Nov 2004 16:22:41 +0000 (GMT) Received: from gold.pobox.com (gold.pobox.com [208.210.124.73]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1408A43D45 for ; Thu, 18 Nov 2004 16:22:41 +0000 (GMT) (envelope-from b.candler@pobox.com) Received: from gold (localhost [127.0.0.1]) by gold.pobox.com (Postfix) with ESMTP id 3B0F0F874 for ; Thu, 18 Nov 2004 11:22:40 -0500 (EST) Received: from billdog.local.linnet.org (dsl-212-74-113-65.access.uk.tiscali.com [212.74.113.65]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by gold.sasl.smtp.pobox.com (Postfix) with ESMTP id D49A62AD79 for ; Thu, 18 Nov 2004 11:22:39 -0500 (EST) Received: from brian by billdog.local.linnet.org with local (Exim 4.43 (FreeBSD)) id 1CUp3O-0000CT-8U for FreeBSD-gnats-submit@freebsd.org; Thu, 18 Nov 2004 16:22:38 +0000 Message-Id: Date: Thu, 18 Nov 2004 16:22:38 +0000 From: Brian Candler To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: kern/74088: ohci ehci uhub: port disabled on connecting USB memory card reader X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Brian Candler List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Nov 2004 16:30:35 -0000 >Number: 74088 >Category: kern >Synopsis: ohci ehci uhub: port disabled on connecting USB memory card reader >Confidential: no >Severity: critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Nov 18 16:30:32 GMT 2004 >Closed-Date: >Last-Modified: >Originator: Brian Candler >Release: FreeBSD 5.3-STABLE i386 >Organization: >Environment: System: FreeBSD billdog.local.linnet.org 5.3-STABLE FreeBSD 5.3-STABLE #3: Thu Nov 18 15:49:59 GMT 2004 root@billdog.local.linnet.org:/usr/src/sys/i386/compile/BILLDOG i386 >Description: On connecting a Mitsumi 7-in-1 internal floppy+card reader, the USB port becomes disabled. (The floppy drive works and appears as /dev/fd0; there are separate IDC and power cables for that) Compiling with 'options USB_DEBUG' and cranking up hw.usb.*.debug=1, here's what I get when I connect the device: Nov 18 16:07:57 billdog kernel: ehci_pcd: change=0x08 Nov 18 16:07:57 billdog kernel: uhub_explore: status change hub=1 port=3 Nov 18 16:07:58 billdog kernel: ehci after reset, status=0x00001001 Nov 18 16:07:58 billdog kernel: ehci_disown: index=3 lowspeed=0 Nov 18 16:07:58 billdog kernel: ohci_rhsc: sc=0xc1de7000 xfer=0xc1deb200 hstatus=0x00000000 Nov 18 16:07:58 billdog kernel: ohci_rhsc: change=0x02 Nov 18 16:07:58 billdog kernel: uhub_explore: status change hub=1 port=1 Nov 18 16:07:58 billdog kernel: ohci_rhsc: sc=0xc1de7000 xfer=0xc1deb200 hstatus=0x00000000 Nov 18 16:07:58 billdog kernel: ohci_rhsc: change=0x02 Nov 18 16:07:58 billdog kernel: ehci_pcd: change=0x08 Nov 18 16:07:58 billdog kernel: uhub_explore: status change hub=1 port=3 Nov 18 16:07:58 billdog kernel: usbd_new_device bus=0xc1de7000 port=1 depth=1 speed=2 Nov 18 16:07:58 billdog kernel: usbd_new_device: adding unit addr=3, rev=110, class=0, subclass=0, protocol=0, maxpacket=8, len=18, speed=2 Nov 18 16:07:58 billdog kernel: usbd_new_device: new dev (addr 3), dev=0xc2650880, parent=0xc1dd9880 Nov 18 16:07:58 billdog kernel: usbd_probe_and_attach: trying device specific drivers Nov 18 16:07:58 billdog kernel: usbd_probe_and_attach: no device specific driver found Nov 18 16:07:58 billdog kernel: usbd_probe_and_attach: looping over 1 configurations Nov 18 16:07:58 billdog kernel: uhub1: port 1, set config at addr 3 failed, error=IOERROR Nov 18 16:07:58 billdog kernel: usbd_remove_device: 0xc2650880 Nov 18 16:07:58 billdog kernel: ohci_device_ctrl_close: pipe=0xc2100800 Nov 18 16:07:58 billdog kernel: uhub_explore: usb_new_device failed, error=IOERROR Nov 18 16:07:58 billdog kernel: uhub1: device problem, disabling port 1 With FreeBSD 5.2.1, I was able to get the memory sockets recognised after a fashion (they were da0 and da1 for the compact flash and smartmedia sockets respectively), although it wasn't reliable and I was hoping 5.3 would fix that. Instead, I can't find the device at all... >How-To-Repeat: My system is a Soltek (EQ3702A?) small form factor PC with nVidia chipset, relevant dmesg output: ohci0: mem 0xee084000-0xee084fff irq 22 at device 2.0 on pci0 ohci0: [GIANT-LOCKED] usb0: OHCI version 1.0, legacy support usb0: SMM does not respond, resetting usb0: on ohci0 usb0: USB revision 1.0 uhub0: nVidia OHCI root hub, class 9/0, rev 1.00/1.00, addr 1 ulpt0: EPSON USB Printer, rev 1.10/1.00, addr 2, iclass 7/1 ohci1: mem 0xee085000-0xee085fff irq 21 at device 2.1 on pci0 ohci1: [GIANT-LOCKED] usb1: OHCI version 1.0, legacy support usb1: SMM does not respond, resetting usb1: on ohci1 usb1: USB revision 1.0 uhub1: nVidia OHCI root hub, class 9/0, rev 1.00/1.00, addr 1 ums0: Cypress Sem Cypress USB Mouse, rev 1.00/4.9c, addr 2, iclass 3/1 ehci0: mem 0xee086000-0xee0860ff irq 20 at device 2.2 on pci0 ehci0: [GIANT-LOCKED] ehci_pci_attach: companion usb0 ehci_pci_attach: companion usb1 usb2: EHCI version 1.0 usb2: companion controllers, 4 ports each: usb0 usb1 usb2: on ehci0 usb2: USB revision 2.0 uhub2: nVidia EHCI root hub, class 9/0, rev 2.00/1.00, addr 1 It works with a USB printer and mouse. However, I presume those are USB1.1, and the card reader may be USB2.0; it didn't come with any documentation. Compiling a kernel without 'ehci' doesn't work; the ohci interface is detected, but plugging in a printer or mouse does nothing. >Fix: Sorry, I don't know anything about USB internals :-( But I'm happy to add extra debugging in if someone will suggest where it should go. >Release-Note: >Audit-Trail: >Unformatted: