On Thu, Mar 24, 2022 at 11:21:54AM -0400, Alan Stern wrote: > On Thu, Mar 24, 2022 at 03:44:41AM +0100, Petr Janecek wrote: > > Hi Alan, > > > > On 3/22/22 19:03, Alan Stern wrote: > > > On Sun, Mar 20, 2022 at 02:15:40AM +0100, Petr Janecek wrote: > > > > Hi, > > > > I'm trying to use Apogee ONEv2. From usb dumps under > > > > macos or windows it seems like a usb Class Audio 2.0 > > > > device, but in linux, it keeps resetting every two seconds > > > > or so. It keeps resetting even when the snd-usb-audio > > > > driver is disabled, so the problem is probably at a lower > > > > level. > > > > > > Can you post the log output on a system where snd-usb-audio is disabled? > > > > [ 3412.279063] usb 3-8: new high-speed USB device number 6 using xhci_hcd > > [ 3412.470003] usb 3-8: New USB device found, idVendor=0c60, idProduct=0017, > > bcdDevice= 1.05 > > [ 3412.470017] usb 3-8: New USB device strings: Mfr=1, Product=2, > > SerialNumber=3 > > [ 3412.470023] usb 3-8: Product: ONEv2 > > [ 3412.470028] usb 3-8: Manufacturer: Apogee > > [ 3412.470033] usb 3-8: SerialNumber: 0C12FF2020204652334D513A7A2A9B > > [ 3413.217053] usb 3-8: USB disconnect, device number 6 > > [ 3413.629046] usb 3-8: new high-speed USB device number 7 using xhci_hcd > > [ 3413.829760] usb 3-8: New USB device found, idVendor=0c60, idProduct=0017, > > bcdDevice= 1.05 > > [ 3413.829766] usb 3-8: New USB device strings: Mfr=1, Product=2, > > SerialNumber=3 > > [ 3413.829768] usb 3-8: Product: ONEv2 > > [ 3413.829770] usb 3-8: Manufacturer: Apogee > > [ 3413.829772] usb 3-8: SerialNumber: 0C12FF2020204652334D513A7A2A9B > > [ 3414.421964] usb 3-8: USB disconnect, device number 7 > > [ 3414.838981] usb 3-8: new high-speed USB device number 8 using xhci_hcd > > [ 3415.029947] usb 3-8: New USB device found, idVendor=0c60, idProduct=0017, > > bcdDevice= 1.05 > > [ 3415.029961] usb 3-8: New USB device strings: Mfr=1, Product=2, > > SerialNumber=3 > > [ 3415.029968] usb 3-8: Product: ONEv2 > > [ 3415.029973] usb 3-8: Manufacturer: Apogee > > [ 3415.029978] usb 3-8: SerialNumber: 0C12FF2020204652334D513A7A2A9B > > [ 3415.627052] usb 3-8: USB disconnect, device number 8 > > Nothing particularly suspicious there. > > > > > > > The messages below are from v5.16.16, but it behaves > > > > the same no matter what I plug it into. > > > > > > > > [ 253.708616] usb 3-8: new high-speed USB device number 6 using xhci_hcd > > > > [ 253.899363] usb 3-8: New USB device found, idVendor=0c60, idProduct=0017, > > > > bcdDevice= 1.05 > > > > [ 253.899370] usb 3-8: New USB device strings: Mfr=1, Product=2, > > > > SerialNumber=3 > > > > [ 253.899373] usb 3-8: Product: ONEv2 > > > > [ 253.899375] usb 3-8: Manufacturer: Apogee > > > > [ 253.899377] usb 3-8: SerialNumber: 0C12FF2020204652334D513A7A2A9B > > > > [ 253.960901] mc: Linux media interface: v0.10 > > > > > > Any idea where that line came from? > > > > That's from CONFIG_MEDIA_CONTROLLER, which is selected for usb > > webcam. It also selects CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER. > > Compiled it out, rebooted. Now the line is missing, but no other > > change. > > > > > You should try capturing a usbmon trace showing what happens when the > > > device is plugged in and then resets. Preferably on a system where > > > snd-usb-audio is disabled. > > > > Trace from wireshark is attached. > > The trace doesn't help much, unfortunately. It shows normal device > initialization, plus a couple of extra string descriptor reads. About > 1/2 second afterward, the device disconnects itself electronically from > the USB bus and reconnects 20 ms later. > > I get the feeling that the device expects to receive some specific > messages from the host within that one-half second, and disconnects if > it doesn't see them. And presumably it doesn't get what it's looking > for even when the USB sound drivers are enabled. I've compared traces in linux to macos and windows, and the only thing linux does that the others don't is something like usb_get_string(dev, 0, 0xee, &buf, 1024) like it's getting the microsoft os descriptor. And the apogee does not like it: it's the only get descriptor string request with empty string response. When the request is made the second time, it's the last request before reset. This oddball request happens even with snd-usb-audio disabled. And I'm totally unable to find where it comes from, I have not enabled anything like USB_GADGET. How to get rid of it? Petr Janecek