Re: Scanner works on USB-2 port but not on USB-3 because of usbfs claiming the interface

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 23 Feb 2012, Harald Judt wrote:

> Hi,
> 
> I've been asked to contact this mailing list regarding 
> https://bugzilla.kernel.org/show_bug.cgi?id=42784:
> 
> Using the same configuration (kernel-3.3-rc4 and older versions), Canon 
> CanoScan LiDE 20 USB scanner works on the USB-2.0 port, but not on USB-3.0.
> 
> usb 5-1: usbfs: interface 0 claimed by usbfs while 'scanimage' sets 
> config #1
> 
> This message is not printed when using USB-2.0.

You can get more information in the dmesg log if you do:

	echo true >/sys/module/usbcore/parameters/usbfs_snoop

before plugging in the scanner.  Compare the results for the two 
different ports.

> scanimage -L:
> No scanners were identified. If you were expecting something different,
> check that the scanner is plugged in, turned on and detected by the
> sane-find-scanner tool (if appropriate). Please read the documentation
> which came with this software (README, FAQ, manpages).
> 
> lsusb:
> Bus 001 Device 005: ID 04a9:220d Canon, Inc. CanoScan N670U/N676U/LiDE 20
> 
> The scanner can be reset using the reset code from
> https://bugzilla.redhat.com/show_bug.cgi?id=723696 after adapting the 
> vendor_id and product_id to match those of the Canon scanner:
> usb 5-1: new full-speed USB device number 3 using xhci_hcd
> usb 5-1: usbfs: interface 0 claimed by usbfs while 'scanimage' sets 
> config #1
> usb 5-1: reset full-speed USB device number 3 using xhci_hcd
> xhci_hcd 0000:05:00.0: xHCI xhci_drop_endpoint called with disabled ep
> ffff880419ba0e40
> 
> The next scanimage -L successfully detects the scanner:
> scanimage -L
> device `plustek:libusb:005:003' is a Canon CanoScan N670U/N676U/LiDE20 
> flatbed scanner
> 
> Unfortunately, it will stop working after a while; There will be 
> messages like "usb 5-1: usbfs: process 12345 (scanbuttond) did not claim 
> interface 0 before use" on repeated use.

That's just a warning.  It indicates the scanbuttond program is doing 
something wrong, but mostly you can ignore it.

> If I'm not mistaken, the USB3 chipset is an Etrontech EJ168A (AsRock P67 
> Extreme 4 Gen2).
> 
> Why does usbfs claim the device on USB-3, but not on USB-2? What's wrong 
> here, is there a way to solve it, what can I do about it?

Probably usbfs does claim the interface on both ports, but in one case 
the claim is before the reset or before the use and, in the other case 
it is after.  The usbfs_snoop information should show what's going on.

As for fixing it, there's no way to know until we find out exactly what 
the problem is.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux