ulpt problem (USB_ERR_IOERROR)
Hans Petter Selasky
hselasky at c2i.net
Fri Jul 3 17:29:47 UTC 2009
On Friday 03 July 2009 18:52:33 Patrick Lamaiziere wrote:
> Le Fri, 3 Jul 2009 17:56:54 +0200,
>
> Hans Petter Selasky <hselasky at c2i.net> a écrit :
> > Have you tried:
> >
> > usbconfig -u XXX -a YYY reset
> >
> > Does it help?
>
> No, it returns
> # usbconfig -u 0 -a 2 reset
> usbconfig: could not reset device: Input/output error
>
> Then ulpt detaches
> ulpt0: at uhub0, port 1, addr 2 (disconnected)
> ulpt_detach:653: sc=0xc317f000
>
> > To me it looks like a problem about your printer USB firmware. Does
> > it respond to:
> >
> > usbconfig -u XXX -a YYY dump_curr_config_desc
> >
> > After the first print job?
>
> Yes, after the first job:
>
> # usbconfig -u 0 -a 2 dump_curr_config_desc ugen0.2: <product 0x001a
> vendor 0x04f9> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
>
>
> Configuration index 0
>
> bLength = 0x0009
> bDescriptorType = 0x0002
> wTotalLength = 0x0020
> bNumInterfaces = 0x0001
> bConfigurationValue = 0x0001
> iConfiguration = 0x0000 <no string>
> bmAttributes = 0x00c0
> bMaxPower = 0x0001
>
> Interface 0
> bLength = 0x0009
> bDescriptorType = 0x0004
> bInterfaceNumber = 0x0000
> bAlternateSetting = 0x0000
> bNumEndpoints = 0x0002
> bInterfaceClass = 0x0007
> bInterfaceSubClass = 0x0001
> bInterfaceProtocol = 0x0002
> iInterface = 0x0000 <no string>
>
> Endpoint 0
> bLength = 0x0007
> bDescriptorType = 0x0005
> bEndpointAddress = 0x0001
> bmAttributes = 0x0002
> wMaxPacketSize = 0x0040
> bInterval = 0x0000
> bRefresh = 0x0000
> bSynchAddress = 0x0000
>
> Endpoint 1
> bLength = 0x0007
> bDescriptorType = 0x0005
> bEndpointAddress = 0x0082
> bmAttributes = 0x0002
> wMaxPacketSize = 0x0040
> bInterval = 0x0000
> bRefresh = 0x0000
> bSynchAddress = 0x0000
>
>
> It looks like there are some problems even with the first job (I missed
> this point before).
>
> ulpt0: using bi-directional
> ulpt_write_callback:220: state=0x0 actlen=0
> ulpt_write_callback:220: state=0x1 actlen=2889
> ulpt_write_callback:220: state=0x1 actlen=3023
> ...
> ulpt_status_callback:352: error=USB_ERR_STALLED
> ulpt_write_callback:220: state=0x1 actlen=16384
> ulpt_write_callback:220: state=0x1 actlen=16384
At this point it looks like the firmware crashes, when the error code changes
from STALLED to IOERROR.
Are you sure the .ps/.pcl file is not corrupt?
> ...
> ulpt_status_callback:352: error=USB_ERR_IOERROR
> ulpt_write_callback:220: state=0x1 actlen=16384
> ulpt_write_callback:220: state=0x1 actlen=16384
> ...
> ulpt_status_callback:352: error=USB_ERR_IOERROR
> ulpt_write_callback:220: state=0x1 actlen=16384
> ulpt_write_callback:220: state=0x1 actlen=15970
> ulpt_status_callback:352: error=USB_ERR_IOERROR
> ulpt_status_callback:352: error=USB_ERR_IOERROR
> ulpt_status_callback:352: error=USB_ERR_IOERROR
> ... (ad eternam)
>
> If it can help, I can compare with FreeBSD 7.2.
Yes, that might give some more clues.
--HPS
More information about the freebsd-current
mailing list