Re: USB Barcode Scanner Won't Load

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

 



On Tue, 16 Nov 2010, Charles Tassell wrote:

> Hi Greg,
> 
>   No, I don't think that is it.  The device is powered via USB, and it
> maintains power until I unplug it.  Also, the device works fine in
> Windows on the same box, and if you look at the udevmon section the
> kernel removes it as a HID device right after udev finishes processing
> it, then adds it back as a generic USB device with no drivers.  Here's
> an annotated description of the process:

Part of the problem is that your original kernel log doesn't have 
timestamps.

Anyway, it would help to have a usbmon trace showing what happens when 
the scanner is plugged in.  Instructions are in the kernel source file 
Documentation/usb/usbmon.txt.  This ought to show what's going on with 
that disconnect & reconnect.

> Plug in the device.  Kernel recognizes it:
> KERNEL[1289756866.849673] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
> KERNEL[1289756866.859563] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
> KERNEL[1289756866.859674] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A (hid)
> KERNEL[1289756866.872800] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13 (input)
> KERNEL[1289756866.872891] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13/event7
> (input)
> KERNEL[1289756866.872909] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A/hidraw/hidraw3
> (hidraw)
> 
> All the devices are registered, so UDEV creates the /dev entries...
> 
> UDEV [1289756866.873915] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
> UDEV [1289756866.874327] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
> UDEV [1289756866.874441] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A (hid)
> UDEV [1289756866.874724] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A/hidraw/hidraw3
> (hidraw)
> 
> Something triggers the kernel to unregister the device from the input
> layer...

usbmon might show the trigger.

> KERNEL[1289756867.166734] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13/event7
> (input)
> KERNEL[1289756867.216580] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13 (input)
> KERNEL[1289756867.216609] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A/hidraw/hidraw3
> (hidraw)
> KERNEL[1289756867.216703] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A (hid)
> KERNEL[1289756867.216741] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
> KERNEL[1289756867.216834] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
> 
> UDEV deletes the devices...
> 
> UDEV [1289756867.216935] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A/hidraw/hidraw3
> (hidraw)
> UDEV [1289756867.217063] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A (hid)
> UDEV [1289756867.271298] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13 (input)
> UDEV [1289756867.303544] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13/event7
> (input)
> UDEV [1289756867.303727] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13/event7
> (input)
> UDEV [1289756867.303820] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13 (input)
> UDEV [1289756867.303965] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
> UDEV [1289756867.304191] remove
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
> 
> The kernel then adds it back as some sort of generic device...
> 
> KERNEL[1289756870.808673] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
> KERNEL[1289756870.817600] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
> 
> UDEV sees this but doesn't create any /dev entries.
> 
> UDEV [1289756870.818662] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
> UDEV [1289756870.837532] add
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
> 
> Physically unplugging the device then causes this:
> 
> KERNEL[1289919402.423327] remove  
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
> KERNEL[1289919402.423414] remove  
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
> UDEV  [1289919402.423536] remove  
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
> UDEV  [1289919402.424162] remove  
> /devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
> 
> 
> It seems to be something in either the kernel itself or UDEV is telling
> the system that this is not a keyboard, so not to treat it as such.  But
> grepping for the vendor and device IDs in both the udev and kernel
> sources dirs doesn't seem to show why it's getting blacklisted.

Maybe something in the _device_ is responsible.

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