← Back to team overview

touch-packages team mailing list archive

[Bug 1539348] [NEW] udevadm info reports wrong ID_MODEL_ID and ID_VENDOR_ID for USB serial port

 

Public bug reported:

Running udevadm info with the device path of a virtual serial port
created by a USB device (in this case a Particle Photon development
board) returns the ID_MODEL_ID and ID_VENDOR_ID for the USB host
controller instead of the Particle device.

The consequence is mis-detection of the device associated with a virtual
serial port in applications.

udevadm info with the virtual serial port. Expect ID_MODEL_ID=c00a and
ID_VENDOR_ID=2b04

$ udevadm info --query=property -p /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/tty/ttyACM0
DEVLINKS=/dev/serial/by-id/pci-Particle_Electron_00000000050C-if00 /dev/serial/by-path/pci-0000:00:14.0-usb-0:1:1.0
DEVNAME=/dev/ttyACM0
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/tty/ttyACM0
ID_BUS=pci
ID_MODEL=Electron
ID_MODEL_ENC=Electron
ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (Zenbook Prime UX31A)
ID_MODEL_ID=0x1e31
ID_PATH=pci-0000:00:14.0-usb-0:1:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_1_1_0
ID_PCI_CLASS_FROM_DATABASE=Serial bus controller
ID_PCI_INTERFACE_FROM_DATABASE=XHCI
ID_PCI_SUBCLASS_FROM_DATABASE=USB controller
ID_REVISION=0200
ID_SERIAL=Particle_Electron_00000000050C
ID_SERIAL_SHORT=00000000050C
ID_TYPE=generic
ID_USB_CLASS_FROM_DATABASE=Communications
ID_USB_DRIVER=cdc_acm
ID_USB_INTERFACES=:020201:0a0000:
ID_USB_INTERFACE_NUM=00
ID_VENDOR=Particle
ID_VENDOR_ENC=Particle
ID_VENDOR_FROM_DATABASE=Intel Corporation
ID_VENDOR_ID=0x8086
MAJOR=166
MINOR=0
SUBSYSTEM=tty
TAGS=:systemd:
USEC_INITIALIZED=4586285779

Running udevadm info with the base device path gives expected IDs

$ udevadm info --query=property -p /devices/pci0000:00/0000:00:14.0/usb1/1-1
BUSNUM=001
DEVNAME=/dev/bus/usb/001/008
DEVNUM=008
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-1
DEVTYPE=usb_device
DRIVER=usb
ID_BUS=usb
ID_MODEL=Electron
ID_MODEL_ENC=Electron
ID_MODEL_ID=c00a
ID_REVISION=0200
ID_SERIAL=Particle_Electron_00000000050C
ID_SERIAL_SHORT=00000000050C
ID_USB_INTERFACES=:020201:0a0000:
ID_VENDOR=Particle
ID_VENDOR_ENC=Particle
ID_VENDOR_ID=2b04
MAJOR=189
MINOR=7
PRODUCT=2b04/c00a/200
SUBSYSTEM=usb
TYPE=2/0/0
USEC_INITIALIZED=4585731209

Running lsusb gives the expected IDs.

$ lsusb -v
Bus 001 Device 008: ID 2b04:c00a  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            2 Communications
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x2b04 
  idProduct          0xc00a 
  bcdDevice            2.00
  iManufacturer           1 Particle
  iProduct                2 Electron
  iSerial                 3 00000000050C
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           67
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      2 Abstract (modem)
      bInterfaceProtocol      1 AT-commands (v.25ter)
      iInterface              0 
      CDC Header:
        bcdCDC               1.10
      CDC Call Management:
        bmCapabilities       0x00
        bDataInterface          1
      CDC ACM:
        bmCapabilities       0x02
          line coding and serial state
      CDC Union:
        bMasterInterface        0
        bSlaveInterface         1 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0001
  Self Powered


$ lsb_release -rd
Description:	Ubuntu 15.10
Release:	15.10

$ apt-cache policy udev
udev:
  Installed: 225-1ubuntu9
  Candidate: 225-1ubuntu9
  Version table:
 *** 225-1ubuntu9 0
        500 http://archive.ubuntu.com/ubuntu/ wily/main amd64 Packages
        100 /var/lib/dpkg/status

ProblemType: Bug
DistroRelease: Ubuntu 15.10
Package: udev 225-1ubuntu9
ProcVersionSignature: Ubuntu 4.2.0-25.30-generic 4.2.6
Uname: Linux 4.2.0-25-generic x86_64
ApportVersion: 2.19.1-0ubuntu5
Architecture: amd64
CurrentDesktop: Unity
CustomUdevRuleFiles: 50-particle.rules 10-pololu-programmer.rules 49-teensy.rules 99-openocd.rules 96-monitor-hotplug.rules 51-android.rules
Date: Thu Jan 28 15:33:38 2016
EcryptfsInUse: Yes
InstallationDate: Installed on 2013-05-09 (994 days ago)
InstallationMedia: Ubuntu 13.04 "Raring Ringtail" - Release amd64 (20130424)
MachineType: ASUSTeK COMPUTER INC. UX31A
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.2.0-25-generic root=UUID=99e110b2-cdee-4df1-ab50-25fea2fd4f30 ro splash quiet vt.handoff=7
SourcePackage: systemd
UpgradeStatus: Upgraded to wily on 2015-10-27 (93 days ago)
dmi.bios.date: 01/31/2013
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: UX31A.218
dmi.board.asset.tag: ATN12345678901234567
dmi.board.name: UX31A
dmi.board.vendor: ASUSTeK COMPUTER INC.
dmi.board.version: 1.0
dmi.chassis.asset.tag: No Asset Tag
dmi.chassis.type: 10
dmi.chassis.vendor: ASUSTeK COMPUTER INC.
dmi.chassis.version: 1.0
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvrUX31A.218:bd01/31/2013:svnASUSTeKCOMPUTERINC.:pnUX31A:pvr1.0:rvnASUSTeKCOMPUTERINC.:rnUX31A:rvr1.0:cvnASUSTeKCOMPUTERINC.:ct10:cvr1.0:
dmi.product.name: UX31A
dmi.product.version: 1.0
dmi.sys.vendor: ASUSTeK COMPUTER INC.

** Affects: systemd (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug wily

** Summary changed:

- udevadm info reports wrong ID_MODEL_ID and  for USB serial port
+ udevadm info reports wrong ID_MODEL_ID and ID_VENDOR_ID for USB serial port

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1539348

Title:
  udevadm info reports wrong ID_MODEL_ID and ID_VENDOR_ID for USB serial
  port

Status in systemd package in Ubuntu:
  New

Bug description:
  Running udevadm info with the device path of a virtual serial port
  created by a USB device (in this case a Particle Photon development
  board) returns the ID_MODEL_ID and ID_VENDOR_ID for the USB host
  controller instead of the Particle device.

  The consequence is mis-detection of the device associated with a
  virtual serial port in applications.

  udevadm info with the virtual serial port. Expect ID_MODEL_ID=c00a and
  ID_VENDOR_ID=2b04

  $ udevadm info --query=property -p /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/tty/ttyACM0
  DEVLINKS=/dev/serial/by-id/pci-Particle_Electron_00000000050C-if00 /dev/serial/by-path/pci-0000:00:14.0-usb-0:1:1.0
  DEVNAME=/dev/ttyACM0
  DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/tty/ttyACM0
  ID_BUS=pci
  ID_MODEL=Electron
  ID_MODEL_ENC=Electron
  ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (Zenbook Prime UX31A)
  ID_MODEL_ID=0x1e31
  ID_PATH=pci-0000:00:14.0-usb-0:1:1.0
  ID_PATH_TAG=pci-0000_00_14_0-usb-0_1_1_0
  ID_PCI_CLASS_FROM_DATABASE=Serial bus controller
  ID_PCI_INTERFACE_FROM_DATABASE=XHCI
  ID_PCI_SUBCLASS_FROM_DATABASE=USB controller
  ID_REVISION=0200
  ID_SERIAL=Particle_Electron_00000000050C
  ID_SERIAL_SHORT=00000000050C
  ID_TYPE=generic
  ID_USB_CLASS_FROM_DATABASE=Communications
  ID_USB_DRIVER=cdc_acm
  ID_USB_INTERFACES=:020201:0a0000:
  ID_USB_INTERFACE_NUM=00
  ID_VENDOR=Particle
  ID_VENDOR_ENC=Particle
  ID_VENDOR_FROM_DATABASE=Intel Corporation
  ID_VENDOR_ID=0x8086
  MAJOR=166
  MINOR=0
  SUBSYSTEM=tty
  TAGS=:systemd:
  USEC_INITIALIZED=4586285779

  Running udevadm info with the base device path gives expected IDs

  $ udevadm info --query=property -p /devices/pci0000:00/0000:00:14.0/usb1/1-1
  BUSNUM=001
  DEVNAME=/dev/bus/usb/001/008
  DEVNUM=008
  DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-1
  DEVTYPE=usb_device
  DRIVER=usb
  ID_BUS=usb
  ID_MODEL=Electron
  ID_MODEL_ENC=Electron
  ID_MODEL_ID=c00a
  ID_REVISION=0200
  ID_SERIAL=Particle_Electron_00000000050C
  ID_SERIAL_SHORT=00000000050C
  ID_USB_INTERFACES=:020201:0a0000:
  ID_VENDOR=Particle
  ID_VENDOR_ENC=Particle
  ID_VENDOR_ID=2b04
  MAJOR=189
  MINOR=7
  PRODUCT=2b04/c00a/200
  SUBSYSTEM=usb
  TYPE=2/0/0
  USEC_INITIALIZED=4585731209

  Running lsusb gives the expected IDs.

  $ lsusb -v
  Bus 001 Device 008: ID 2b04:c00a  
  Device Descriptor:
    bLength                18
    bDescriptorType         1
    bcdUSB               2.00
    bDeviceClass            2 Communications
    bDeviceSubClass         0 
    bDeviceProtocol         0 
    bMaxPacketSize0        64
    idVendor           0x2b04 
    idProduct          0xc00a 
    bcdDevice            2.00
    iManufacturer           1 Particle
    iProduct                2 Electron
    iSerial                 3 00000000050C
    bNumConfigurations      1
    Configuration Descriptor:
      bLength                 9
      bDescriptorType         2
      wTotalLength           67
      bNumInterfaces          2
      bConfigurationValue     1
      iConfiguration          0 
      bmAttributes         0xc0
        Self Powered
      MaxPower              100mA
      Interface Descriptor:
        bLength                 9
        bDescriptorType         4
        bInterfaceNumber        0
        bAlternateSetting       0
        bNumEndpoints           1
        bInterfaceClass         2 Communications
        bInterfaceSubClass      2 Abstract (modem)
        bInterfaceProtocol      1 AT-commands (v.25ter)
        iInterface              0 
        CDC Header:
          bcdCDC               1.10
        CDC Call Management:
          bmCapabilities       0x00
          bDataInterface          1
        CDC ACM:
          bmCapabilities       0x02
            line coding and serial state
        CDC Union:
          bMasterInterface        0
          bSlaveInterface         1 
        Endpoint Descriptor:
          bLength                 7
          bDescriptorType         5
          bEndpointAddress     0x82  EP 2 IN
          bmAttributes            3
            Transfer Type            Interrupt
            Synch Type               None
            Usage Type               Data
          wMaxPacketSize     0x0008  1x 8 bytes
          bInterval             255
      Interface Descriptor:
        bLength                 9
        bDescriptorType         4
        bInterfaceNumber        1
        bAlternateSetting       0
        bNumEndpoints           2
        bInterfaceClass        10 CDC Data
        bInterfaceSubClass      0 Unused
        bInterfaceProtocol      0 
        iInterface              0 
        Endpoint Descriptor:
          bLength                 7
          bDescriptorType         5
          bEndpointAddress     0x01  EP 1 OUT
          bmAttributes            2
            Transfer Type            Bulk
            Synch Type               None
            Usage Type               Data
          wMaxPacketSize     0x0040  1x 64 bytes
          bInterval               0
        Endpoint Descriptor:
          bLength                 7
          bDescriptorType         5
          bEndpointAddress     0x81  EP 1 IN
          bmAttributes            2
            Transfer Type            Bulk
            Synch Type               None
            Usage Type               Data
          wMaxPacketSize     0x0040  1x 64 bytes
          bInterval               0
  Device Status:     0x0001
    Self Powered


  
  $ lsb_release -rd
  Description:	Ubuntu 15.10
  Release:	15.10

  $ apt-cache policy udev
  udev:
    Installed: 225-1ubuntu9
    Candidate: 225-1ubuntu9
    Version table:
   *** 225-1ubuntu9 0
          500 http://archive.ubuntu.com/ubuntu/ wily/main amd64 Packages
          100 /var/lib/dpkg/status

  ProblemType: Bug
  DistroRelease: Ubuntu 15.10
  Package: udev 225-1ubuntu9
  ProcVersionSignature: Ubuntu 4.2.0-25.30-generic 4.2.6
  Uname: Linux 4.2.0-25-generic x86_64
  ApportVersion: 2.19.1-0ubuntu5
  Architecture: amd64
  CurrentDesktop: Unity
  CustomUdevRuleFiles: 50-particle.rules 10-pololu-programmer.rules 49-teensy.rules 99-openocd.rules 96-monitor-hotplug.rules 51-android.rules
  Date: Thu Jan 28 15:33:38 2016
  EcryptfsInUse: Yes
  InstallationDate: Installed on 2013-05-09 (994 days ago)
  InstallationMedia: Ubuntu 13.04 "Raring Ringtail" - Release amd64 (20130424)
  MachineType: ASUSTeK COMPUTER INC. UX31A
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.2.0-25-generic root=UUID=99e110b2-cdee-4df1-ab50-25fea2fd4f30 ro splash quiet vt.handoff=7
  SourcePackage: systemd
  UpgradeStatus: Upgraded to wily on 2015-10-27 (93 days ago)
  dmi.bios.date: 01/31/2013
  dmi.bios.vendor: American Megatrends Inc.
  dmi.bios.version: UX31A.218
  dmi.board.asset.tag: ATN12345678901234567
  dmi.board.name: UX31A
  dmi.board.vendor: ASUSTeK COMPUTER INC.
  dmi.board.version: 1.0
  dmi.chassis.asset.tag: No Asset Tag
  dmi.chassis.type: 10
  dmi.chassis.vendor: ASUSTeK COMPUTER INC.
  dmi.chassis.version: 1.0
  dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvrUX31A.218:bd01/31/2013:svnASUSTeKCOMPUTERINC.:pnUX31A:pvr1.0:rvnASUSTeKCOMPUTERINC.:rnUX31A:rvr1.0:cvnASUSTeKCOMPUTERINC.:ct10:cvr1.0:
  dmi.product.name: UX31A
  dmi.product.version: 1.0
  dmi.sys.vendor: ASUSTeK COMPUTER INC.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1539348/+subscriptions