usb/130066: [newusb] Serial adaptor use fail with 'unsupported speed XXX'

Hans Petter Selasky hselasky at c2i.net
Fri Jan 2 16:29:46 PST 2009


On Tuesday 30 December 2008, Simon L. Nielsen wrote:
> >Number:         130066
> >Category:       usb
> >Synopsis:       [newusb] Serial adaptor use fail with 'unsupported speed
> > XXX' Confidential:   no
> >Severity:       serious
> >Priority:       low
> >Responsible:    freebsd-usb
> >State:          open
> >Quarter:
> >Keywords:
> >Date-Required:
> >Class:          sw-bug
> >Submitter-Id:   current-users
> >Arrival-Date:   Tue Dec 30 22:40:00 UTC 2008
> >Closed-Date:
> >Last-Modified:
> >Originator:     Simon L. Nielsen
> >Release:        FreeBSD 8.0-CURRENT i386
> >Organization:
> >Environment:
>
> System: FreeBSD eddie.nitro.dk 8.0-CURRENT FreeBSD 8.0-CURRENT #1: Tue Dec
> 30 22:28:33 CET 2008    
> simon at eddie.nitro.dk:/FreeBSD/obj/FreeBSD/system-CURRENT/sys/EDDIE  i386
>
> >Description:
>
> When I try to use my USB to serial adaptors they fail when I try to
> use the ports.  cu and tip complain about problems setting the speed
> to 9600 (or other speeds).
>
> Using the old USB stack the adaptors work fine.
>
> # cu -l /dev/cuaU0
> cu: unsupported speed 9600
> # cu -l /dev/cuaU1
> cu: unsupported speed 9600
> # cu -s 115200 -l /dev/cuaU1
> cu: unsupported speed 115200
> # tip ucom2
> tip: bad baud rate 9600
>
> Debug info:
> >From dmesg/boot:
>
> ugen0.2: <Prolific Technology Inc.> at usbus0
> uplcom0: <Prolific Technology Inc. USB-Serial Controller, class 0/0, rev
> 1.10/3.00, addr 2> on usbus0 ugen6.2: <Prolific Technology> at usbus6
> uplcom1: <Prolific Technology PL2303 Serial (ATEN/IOGEAR UC232A), class
> 0/0, rev 1.10/2.02, addr 2> on usbus6 ugen6.3: <American Power Conversion>
> at usbus6
>
>
> # usbconfig list
> ugen0.1: <UHCI root HUB Intel> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON ugen1.1: <UHCI root HUB Intel> at usbus1, cfg=0 md=HOST spd=FULL
> (12Mbps) pwr=ON ugen2.1: <UHCI root HUB Intel> at usbus2, cfg=0 md=HOST
> spd=FULL (12Mbps) pwr=ON ugen3.1: <EHCI root HUB Intel> at usbus3, cfg=0
> md=HOST spd=HIGH (480Mbps) pwr=ON ugen4.1: <UHCI root HUB Intel> at usbus4,
> cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen5.1: <UHCI root HUB Intel> at
> usbus5, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen6.1: <UHCI root HUB
> Intel> at usbus6, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen7.1: <EHCI
> root HUB Intel> at usbus7, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON ugen0.2:
> <USB-Serial Controller Prolific Technology Inc.> at usbus0, cfg=0 md=HOST
> spd=FULL (12Mbps) pwr=ON ugen6.2: <PL2303 Serial (ATEN/IOGEAR UC232A)
> Prolific Technology> at usbus6, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
> ugen6.3: <Smart-UPS 1000 FW:600.3.I USB FW:1.5 American Power Conversion>
> at usbus6, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON
>
>
> # usbconfig dump_device_desc
> ugen0.1: <UHCI root HUB Intel> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0100
>   bDeviceClass = 0x0009
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x0000
>   idProduct = 0x0000
>   bcdDevice = 0x0100
>   iManufacturer = 0x0001  <Intel>
>   iProduct = 0x0002  <UHCI root HUB>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen1.1: <UHCI root HUB Intel> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0100
>   bDeviceClass = 0x0009
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x0000
>   idProduct = 0x0000
>   bcdDevice = 0x0100
>   iManufacturer = 0x0001  <Intel>
>   iProduct = 0x0002  <UHCI root HUB>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen2.1: <UHCI root HUB Intel> at usbus2, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0100
>   bDeviceClass = 0x0009
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x0000
>   idProduct = 0x0000
>   bcdDevice = 0x0100
>   iManufacturer = 0x0001  <Intel>
>   iProduct = 0x0002  <UHCI root HUB>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen3.1: <EHCI root HUB Intel> at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps)
> pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0200
>   bDeviceClass = 0x0009
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0001
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x0000
>   idProduct = 0x0000
>   bcdDevice = 0x0100
>   iManufacturer = 0x0001  <Intel>
>   iProduct = 0x0002  <EHCI root HUB>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen4.1: <UHCI root HUB Intel> at usbus4, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0100
>   bDeviceClass = 0x0009
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x0000
>   idProduct = 0x0000
>   bcdDevice = 0x0100
>   iManufacturer = 0x0001  <Intel>
>   iProduct = 0x0002  <UHCI root HUB>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen5.1: <UHCI root HUB Intel> at usbus5, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0100
>   bDeviceClass = 0x0009
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x0000
>   idProduct = 0x0000
>   bcdDevice = 0x0100
>   iManufacturer = 0x0001  <Intel>
>   iProduct = 0x0002  <UHCI root HUB>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen6.1: <UHCI root HUB Intel> at usbus6, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0100
>   bDeviceClass = 0x0009
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x0000
>   idProduct = 0x0000
>   bcdDevice = 0x0100
>   iManufacturer = 0x0001  <Intel>
>   iProduct = 0x0002  <UHCI root HUB>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen7.1: <EHCI root HUB Intel> at usbus7, cfg=0 md=HOST spd=HIGH (480Mbps)
> pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0200
>   bDeviceClass = 0x0009
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0001
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x0000
>   idProduct = 0x0000
>   bcdDevice = 0x0100
>   iManufacturer = 0x0001  <Intel>
>   iProduct = 0x0002  <EHCI root HUB>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen0.2: <USB-Serial Controller Prolific Technology Inc.> at usbus0, cfg=0
> md=HOST spd=FULL (12Mbps) pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0110
>   bDeviceClass = 0x0000
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0040
>   idVendor = 0x067b
>   idProduct = 0x2303
>   bcdDevice = 0x0300
>   iManufacturer = 0x0001  <Prolific Technology Inc.>
>   iProduct = 0x0002  <USB-Serial Controller>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen6.2: <PL2303 Serial (ATEN/IOGEAR UC232A) Prolific Technology> at
> usbus6, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0110
>   bDeviceClass = 0x0000
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0008
>   idVendor = 0x067b
>   idProduct = 0x2303
>   bcdDevice = 0x0202
>   iManufacturer = 0x0000  <no string>
>   iProduct = 0x0000  <no string>
>   iSerialNumber = 0x0000  <no string>
>   bNumConfigurations = 0x0001
>
> ugen6.3: <Smart-UPS 1000 FW:600.3.I USB FW:1.5 American Power Conversion>
> at usbus6, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON
>
>   bLength = 0x0012
>   bDescriptorType = 0x0001
>   bcdUSB = 0x0110
>   bDeviceClass = 0x0000
>   bDeviceSubClass = 0x0000
>   bDeviceProtocol = 0x0000
>   bMaxPacketSize0 = 0x0008
>   idVendor = 0x051d
>   idProduct = 0x0002
>   bcdDevice = 0x0006
>   iManufacturer = 0x0003  <American Power Conversion>
>   iProduct = 0x0001  <Smart-UPS 1000 FW:600.3.I USB FW:1.5>
>   iSerialNumber = 0x0002  <AS0349232422>
>   bNumConfigurations = 0x0001
>
> >From my kernel config:
>
> # USB Support
> device          usb2_core               # USB Core (required)
> # USB Controllers
> device          usb2_controller         # USB Controller (required)
> device          usb2_controller_uhci    # UHCI PCI->USB interface
> device          usb2_controller_ohci    # OHCI PCI->USB interface
> device          usb2_controller_ehci    # EHCI PCI->USB interface (USB 2.0)
> #device         usb2_misc               # USB Misc. (required)
> #device         usb2_misc_dbp           # USB Double Bulk Pipe devices
> # USB Input
> device          usb2_input              # USB Input (required)
> device          usb2_input_hid          # "Human Interface Devices"
> device          usb2_input_kbd          # Keyboard
> device          usb2_input_ms           # Mouse
> # USB Storage
> device          usb2_storage
> device          usb2_storage_mass       # Disks/Mass storage - Requires
> scbus and da #device         usb2_storage_rio        # Diamond Rio 500 MP3
> player # USB WLAN
> device          usb2_wlan               # USB Wlan (required)
> device          usb2_wlan_rum           # Ralink Technology RT2501USB
> wireless NICs device          usb2_wlan_ral           # Ralink Technology
> RT2500USB wireless NICs device          usb2_wlan_zyd           # ZyDAS
> zb1211/zb1211b wireless NICs # USB Scanners
> device          usb2_image              # USB image (required by scanners)
> device          usb2_scanner            # Scanners
> # USB Serial devices
> device          usb2_serial             # USB Serial (Required)
> device          usb2_serial_lpt         # Printer
> #device         usb2_serial_3g          # USB-based 3G modems (Option,
> Huawei, Sierra) device          usb2_serial_ark         # Technologies
> ARK3116 based serial adapters device          usb2_serial_bsa         #
> Belkin F5U103 and compatible serial adapters device         
> usb2_serial_bser
> device          usb2_serial_chcom
> device          usb2_serial_cycom
> device          usb2_serial_foma
> device          usb2_serial_ftdi        # For FTDI USB serial adapters
> device          usb2_serial_gensa       # Generic Serial Adapters
> device          usb2_serial_ipaq        # Some WinCE based devices
> device          usb2_serial_mct
> device          usb2_serial_modem       # Generic USB modems
> device          usb2_serial_moscom
> device          usb2_serial_plcom       # Prolific PL-2303 serial adapters
> #device         usb2_serial_slcom       # SI Labs CP2101/CP2102 serial
> adapters device          usb2_serial_visor       # Visor and Palm devices
> device          usb2_serial_vscom       # USB serial support for DDI
> pocket's PHS # USB Ethernet, requires miibus
> device          usb2_ethernet           # USB Ethernet (required)
> device          usb2_ethernet_aue       # ADMtek USB Ethernet
> device          usb2_ethernet_axe       # ASIX Electronics USB Ethernet
> device          usb2_ethernet_cdce      # Generic USB over Ethernet
> device          usb2_ethernet_cue       # CATC USB Ethernet
> device          usb2_ethernet_kue       # Kawasaki LSI USB Ethernet
> device          usb2_ethernet_rue       # RealTek RTL8150 USB Ethernet
> #device         usb2_ethernet_dav       # Davicom DM9601E USB
>
> >How-To-Repeat:
> >Fix:
> >Release-Note:
> >Audit-Trail:
> >Unformatted:
>

Hi,

This issue is cause by an IOCTL returning ENOTTY instead of ENOIOCTL.

I will be fixed shortly.

--HPS


More information about the freebsd-usb mailing list