Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Jul 2009 18:52:33 +0200
From:      Patrick Lamaiziere <patfbsd@davenulle.org>
To:        Hans Petter Selasky <hselasky@c2i.net>
Cc:        freebsd-current@freebsd.org
Subject:   Re: ulpt problem (USB_ERR_IOERROR)
Message-ID:  <20090703185233.4f7e4a65@baby-jane.lamaiziere.net>
In-Reply-To: <200907031756.55253.hselasky@c2i.net>
References:  <20090703172600.1971111e@baby-jane.lamaiziere.net> <200907031756.55253.hselasky@c2i.net>

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

Le Fri, 3 Jul 2009 17:56:54 +0200,
Hans Petter Selasky <hselasky@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
...
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.

Thank you.



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