Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Dec 2009 07:10:06 GMT
From:      Jan Marek <janmarek@gdi.cz>
To:        freebsd-usb@FreeBSD.org
Subject:   Re: usb/141313: nvidia USB 2.0 controller - stops copying on USB
Message-ID:  <200912100710.nBA7A6R2084467@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR usb/141313; it has been noted by GNATS.

From: Jan Marek <janmarek@gdi.cz>
To: bug-followup@FreeBSD.org, janmarek@gdi.cz
Cc:  
Subject: Re: usb/141313: nvidia USB 2.0 controller - stops copying on USB
Date: Thu, 10 Dec 2009 07:25:07 +0100

 Hi,
 
 Im no sure if I did right, can You check:
 
 pcicon -lv | grep ehci
 ehci0@pci0:0:2:1:       class=0x0c0320 card=0x815a1043 chip=0x005b10de 
 rev=0xa3 hdr=0x00
 
 I searched the switch in file ehci_pci.c
 
 found
 
 case 0x005b10de:
                  return "NVIDIA nForce4 USB 2.0 controller";
 
 so the controller is listed
 
 I also found and thought i should edit this switch:
 
 
   /* Dropped interrupts workaround */
          switch (pci_get_vendor(self)) {
          case PCI_EHCI_VENDORID_ATI:
          case PCI_EHCI_VENDORID_VIA:
                  sc->sc_flags |= EHCI_SCFLG_LOSTINTRBUG;
                  if (bootverbose)
                          device_printf(self,
                              "Dropped interrupts workaround enabled\n");
                  break;
          default:
                  break;
          }
 
 I'm not sure if this is what You mean but i updated like this:
 
 
 
 /* Dropped interrupts workaround */
          switch (pci_get_vendor(self)) {
          case PCI_EHCI_VENDORID_ATI:
          case PCI_EHCI_VENDORID_NVIDIA:
          case PCI_EHCI_VENDORID_VIA:
                  sc->sc_flags |= EHCI_SCFLG_LOSTINTRBUG;
                  if (bootverbose)
                          device_printf(self,
                              "Dropped interrupts workaround enabled\n");
                  break;
          default:
                  break;
          }
 
 now i get this error message when I connect usb device:
 
 Root mount waiting for: usbus1
 Root mount waiting for: usbus1
 usb_alloc_device: set address 2 failed (USB_ERR_TIMEOUT, ignored)
 Root mount waiting for: usbus1
 usb_alloc_device: getting device descriptor at addr 2 failed, 
 USB_ERR_TIMEOUT
 Root mount waiting for: usbus1
 Root mount waiting for: usbus1
 usbd_req_re_enumerate: addr=2, set address failed! (USB_ERR_TIMEOUT, 
 ignored)
 Root mount waiting for: usbus1
 usbd_req_re_enumerate: getting device descriptor at addr 2 failed, 
 USB_ERR_TIMEOUT
 Root mount waiting for: usbus1
 Root mount waiting for: usbus1
 usbd_req_re_enumerate: addr=2, set address failed! (USB_ERR_TIMEOUT, 
 ignored)
 Root mount waiting for: usbus1
 usbd_req_re_enumerate: getting device descriptor at addr 2 failed, 
 USB_ERR_TIMEOUT
 ugen1.2: <(null)> at usbus1 (disconnected)
 uhub_reattach_port: could not allocate new device
 
 I'm not so experienced, so maybe I did something wrong.
 
 also there are lines in the beginning:
 
 #define PCI_EHCI_VENDORID_NVIDIA        0x12D2
 #define PCI_EHCI_VENDORID_NVIDIA2       0x10DE
 
 not sure if  I should also update somehow this because the values 
 0x12D2, 0x10DE are not in the pciconf -lv listing
 
 Thanks for any help
 
 Regards
 
 Jan



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