Bug 138654

Summary: Visor node /dev/pilot not created by udev after device is recognized
Product: [Fedora] Fedora Reporter: Paul W. Frields <stickster>
Component: udevAssignee: Harald Hoyer <harald>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 3CC: jordanmeek
Target Milestone: ---Keywords: FutureFeature
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-04-27 13:36:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Paul W. Frields 2004-11-10 15:15:13 UTC
Description of problem:

Fedora Core 3 final here, newest up2date udev. My Visor is recognized
by hotplug and the visor modules loads. However, udev does not seem to
do anything with the device nodes. If I watch /sys/bus/usb/devices I
do see the sysfs recognize the Visor.

I tried the hint on the fedora-docs udev page ("ln -s ttyUSB1
/etc/udev/devices/pilot"). Whether I have my gnome-pilot applet
pointed at /dev/ttyUSB1 or /dev/pilot, it doesn't do anything. I
suspect this is only a secondary symptom; if there's no
/dev/{ttyUSB1,pilot} created, one would expect it to fail.

I am not very well-versed in udev, and hope I'm not missing something
really simple. Do I need to write a rule for my Visor? This seems like
a pretty good candidate for inclusion in the stock udev, if so.


Version-Release number of selected component (if applicable):
udev-039-10.FC3.1

How reproducible:
Every time.

Steps to Reproduce:
1. Attach Visor and press cradle hotsync button.
2. "tail -f /var/log/messages", and watch as visor is recognized and
kmod does its magic, then almost immediately disconnects.
3. Try "ln -s ttyUSB1 /etc/udev/devices/pilot", and watch the same
thing happen.
  
Actual results:
Nothing useful happens.

Expected results:
/dev/pilot and/or /dev/ttyUSB1 created, and gnome-pilot works as it
did in FC2.

Additional info:

Comment 1 Paul W. Frields 2004-11-10 15:25:27 UTC
Adding this line to 50-udev.rules made it work for me:

  KERNEL="ttyUSB1", BUS="usb", NAME="pilot"

I realize that I need to move this line to a rules file not packaged
in udev. I am changing this bug's severity accordingly to
"enhancement," since I think that many users would benefit from this
change. Visors and other related handhelds are ubiquitous and Fedora
Core should work for these devices out of the box.

Comment 2 Harald Hoyer 2004-11-11 13:51:26 UTC
See also: http://fcp.homelinux.org/modules/wffaq/article.php?t=11

Comment 3 Harald Hoyer 2004-12-16 15:54:59 UTC
could you all give me the output of: 
# udevinfo -a -p `udevinfo -q path -n /dev/ttyUSB0`

change it to the /dev/ttyUSBx you have on your system, please

Comment 4 Harald Hoyer 2005-04-27 10:19:35 UTC
and also: do not use 50-udev.rules! make your own file, or it will get
overwritten... how about 40-myownlocal.rules ??

Comment 5 Paul W. Frields 2005-04-27 11:39:48 UTC
I actually moved my rule to 90-visor.rules after submitting this bug, but
thanks.  Strangely, I didn't receive any notification from BZ in December,
otherwise I would have responded sooner.  Sorry about that, here's the material
you requested in comment #3 above:

  looking at class device '/sys/class/tty/ttyUSB1':
    SYSFS{dev}="188:1"

follow the class device's "device"
  looking at the device chain at
'/sys/devices/pci0000:00/0000:00:1d.1/usb3/3-2/3-2:1.0/ttyUSB1':
    BUS="usb-serial"
    ID="ttyUSB1"
    SYSFS{detach_state}="0"

  looking at the device chain at
'/sys/devices/pci0000:00/0000:00:1d.1/usb3/3-2/3-2:1.0':
    BUS="usb"
    ID="3-2:1.0"
    SYSFS{bAlternateSetting}=" 0"
    SYSFS{bInterfaceClass}="ff"
    SYSFS{bInterfaceNumber}="00"
    SYSFS{bInterfaceProtocol}="00"
    SYSFS{bInterfaceSubClass}="00"
    SYSFS{bNumEndpoints}="04"
    SYSFS{detach_state}="0"

  looking at the device chain at '/sys/devices/pci0000:00/0000:00:1d.1/usb3/3-2':
    BUS="usb"
    ID="3-2"
    SYSFS{bConfigurationValue}="1"
    SYSFS{bDeviceClass}="00"
    SYSFS{bDeviceProtocol}="00"
    SYSFS{bDeviceSubClass}="00"
    SYSFS{bMaxPower}="  2mA"
    SYSFS{bNumConfigurations}="1"
    SYSFS{bNumInterfaces}=" 1"
    SYSFS{bcdDevice}="0100"
    SYSFS{bmAttributes}="c0"
    SYSFS{detach_state}="0"
    SYSFS{devnum}="9"
    SYSFS{idProduct}="0100"
    SYSFS{idVendor}="082d"
    SYSFS{manufacturer}="Handspring Inc"
    SYSFS{maxchild}="0"
    SYSFS{product}="Handspring Visor"
    SYSFS{speed}="12"
    SYSFS{version}=" 1.00"

  looking at the device chain at '/sys/devices/pci0000:00/0000:00:1d.1/usb3':
    BUS="usb"
    ID="usb3"
    SYSFS{bConfigurationValue}="1"
    SYSFS{bDeviceClass}="09"
    SYSFS{bDeviceProtocol}="00"
    SYSFS{bDeviceSubClass}="00"
    SYSFS{bMaxPower}="  0mA"
    SYSFS{bNumConfigurations}="1"
    SYSFS{bNumInterfaces}=" 1"
    SYSFS{bcdDevice}="0206"
    SYSFS{bmAttributes}="c0"
    SYSFS{detach_state}="0"
    SYSFS{devnum}="1"
    SYSFS{idProduct}="0000"
    SYSFS{idVendor}="0000"
    SYSFS{manufacturer}="Linux 2.6.11-1.14_FC3 uhci_hcd"
    SYSFS{maxchild}="2"
    SYSFS{product}="UHCI Host Controller"
    SYSFS{serial}="0000:00:1d.1"
    SYSFS{speed}="12"
    SYSFS{version}=" 1.10"

  looking at the device chain at '/sys/devices/pci0000:00/0000:00:1d.1':
    BUS="pci"
    ID="0000:00:1d.1"
    SYSFS{class}="0x0c0300"
    SYSFS{detach_state}="0"
    SYSFS{device}="0x24c4"
    SYSFS{irq}="11"
    SYSFS{local_cpus}="1"
    SYSFS{subsystem_device}="0x052d"
    SYSFS{subsystem_vendor}="0x1014"
    SYSFS{vendor}="0x8086"

  looking at the device chain at '/sys/devices/pci0000:00':
    BUS=""
    ID="pci0000:00"
    SYSFS{detach_state}="0"