Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Aug 2008 15:29:54 GMT
From:      Aled Morris <aledm@qix.co.uk>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   usb/126740: ulpt doesn't work on 7.0-RELEASE
Message-ID:  <200808221529.m7MFTsOT065282@www.freebsd.org>
Resent-Message-ID: <200808221530.m7MFU4no054352@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         126740
>Category:       usb
>Synopsis:       ulpt doesn't work on 7.0-RELEASE
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-usb
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Aug 22 15:30:03 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator:     Aled Morris
>Release:        7.0-RELEASE
>Organization:
>Environment:
FreeBSD kryten.carneddi.net 7.0-RELEASE FreeBSD 7.0-RELEASE #1: Fri Aug 22 15:21:55 BST 2008     aledm@kryten.carneddi.net:/usr/src/sys/i386/compile/DELL  i386

>Description:
Trying to print to a Dymo label printer 400 connected via USB to my Dell 6000 laptop running 7.0-RELEASE.

This used to work on this hardware under an older release of FreeBSD 5.  The printer works on the same hardware if I boot Windows XP.

The symptom is that writing to the USB port times out and returns an error EIO.

I am trying to use CUPS however the problem also appears if you just do:

# echo hello >/dev/ulpt0
su: echo: write error: Input/output error

There is a delay of exactly 10 seconds before the error message is printed.

Here is the output of dmesg with USB_DEBUG set to 999:

ulptopen: flags=0x0
ulpt_reset
usbd_alloc_xfer() = 0xc58ea600
usbd_transfer: xfer=0xc58ea600, flags=2, pipe=0xc5414800, running=0
usbd_dump_queue: pipe=0xc5414800
usb_insert_transfer: pipe=0xc5414800 running=0 timeout=5000
usb_event_thread: woke up
usb_discover
usb_add_task: task=0xc58ea790
usb_task_thread: woke up task=0xc58ea790
usb_schedsoftintr: polling=0
usb_transfer_complete: pipe=0xc5414800 xfer=0xc58ea600 status=15 actlen=0
usb_transfer_complete: repeat=0 new head=0
usbd_start_next: pipe=0xc5414800, xfer=0
usbd_free_xfer: 0xc58ea600
usbd_alloc_xfer() = 0xc58ea600
usbd_transfer: xfer=0xc58ea600, flags=2, pipe=0xc5414800, running=0
usbd_dump_queue: pipe=0xc5414800
usb_insert_transfer: pipe=0xc5414800 running=0 timeout=5000
usb_add_task: task=0xc58ea790
usb_task_thread: woke up task=0xc58ea790
usb_schedsoftintr: polling=0
usb_transfer_complete: pipe=0xc5414800 xfer=0xc58ea600 status=15 actlen=0
usb_transfer_complete: repeat=0 new head=0
usbd_start_next: pipe=0xc5414800, xfer=0
usbd_free_xfer: 0xc58ea600
usbd_open_pipe: iface=0xc655cd60 address=0x2 flags=0x0
usbd_setup_pipe: dev=0xc6796780 iface=0xc655cd60 ep=0xc655c8cc pipe=0xe7b4f9a8
usbd_alloc_xfer() = 0xc58ea600
ulpt_open: open input pipe
usbd_open_pipe: iface=0xc655cd60 address=0x82 flags=0x0
usbd_setup_pipe: dev=0xc6796780 iface=0xc655cd60 ep=0xc655c8c0 pipe=0xe7b4f9a8
usbd_alloc_xfer() = 0xc527d200
ulpt_open: start read callout
ulptopen: done, error=0
ulptwrite
usbd_alloc_xfer() = 0xc58ea400
usbd_transfer: xfer=0xc58ea400, flags=2, pipe=0xc5414800, running=0
usbd_dump_queue: pipe=0xc5414800
usb_insert_transfer: pipe=0xc5414800 running=0 timeout=5000
usb_schedsoftintr: polling=0
usb_transfer_complete: pipe=0xc5414800 xfer=0xc58ea400 status=0 actlen=1
usb_transfer_complete: repeat=0 new head=0
usbd_start_next: pipe=0xc5414800, xfer=0
usbd_free_xfer: 0xc58ea400
ulpt_status: status=0x18 err=0
ulptwrite: transfer 6 bytes
usbd_bulk_transfer: start transfer 6 bytes
usbd_transfer: xfer=0xc58ea600, flags=1, pipe=0xc6796400, running=0
usbd_dump_queue: pipe=0xc6796400
usb_insert_transfer: pipe=0xc6796400 running=0 timeout=0
usb_schedsoftintr: polling=0
usb_transfer_complete: pipe=0xc6796400 xfer=0xc58ea600 status=17 actlen=6
usb_transfer_complete: repeat=0 new head=0
usbd_start_next: pipe=0xc6796400, xfer=0
usbd_bulk_transfer: transferred 6
usbd_bulk_transfer: error=17
usbd_clear_endpoint_stall
usbd_alloc_xfer() = 0xc58ea400
usbd_transfer: xfer=0xc58ea400, flags=2, pipe=0xc5414800, running=0
usbd_dump_queue: pipe=0xc5414800
usb_insert_transfer: pipe=0xc5414800 running=0 timeout=5000
usb_schedsoftintr: polling=0
usb_schedsoftintr: polling=0
usb_transfer_complete: pipe=0xc5414800 xfer=0xc58ea400 status=0 actlen=0
usb_transfer_complete: repeat=0 new head=0
usbd_start_next: pipe=0xc5414800, xfer=0
usbd_free_xfer: 0xc58ea400
ulptwrite: error=17
usbd_ar_pipe: pipe=0xc6796400
usbd_dump_queue: pipe=0xc6796400
usbd_free_xfer: 0xc58ea600
usbd_ar_pipe: pipe=0xc61d1800
usbd_dump_queue: pipe=0xc61d1800
usbd_free_xfer: 0xc527d200
ulptclose: closed

>How-To-Repeat:
echo hello >/dev/ulpt0
>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200808221529.m7MFTsOT065282>