On Wed, Apr 9, 2008 at 12:12 PM, Stuart Henderson <[EMAIL PROTECTED]> wrote:
> On 2008-04-09, syl <[EMAIL PROTECTED]> wrote:
>  > I'm developping a firmware for an usb device for my enterprise
>  > and I try to be compatible with OpenBSD.
>
>  great (:
:)
>
>
>  > The plug seems to works fine. The attach works and attach ucom0
>  > at umodem and umodem at uhub.
>  >
>  > But when I'm trying to do this :
>  > echo aaab > /dev/ttyU0
>
>  This is normal, try cuaU0. Also you might find "cu -l /dev/cuaU0"
>  is useful for testing..
>
>

I've just try cuaU0 and the trace is nice and more understandable.

But I think I've always got a problem with the setlinecoding

When I add trace into the kernel I saw that the function
umodem_set_line_coding failed and return the value 0x0f.
In the usbdi.h the 0x0f value equals to the USBD_TIMEOUT
define.

So I think I made a bad response to the SET_LINE_CODING.

What I am doing exactly on device side:

DEVICE RECV 8 BITS (ENDPOINT0) : 0x21 0x20 0x00 0x00 0x00 0x00 0x07 0x00
DEVICE RECV 7 BITS (ENDPOINT0) : 0x80 0x25 0x00 0x00 0x00 0x00 0x08

The first receive is do because I intercept an interrupt that there
are 8 bits available
on the endpoint0 after i read directly 7 bits for getting the end of
this request.
Does I forget something ? Does I send some ack to the host, or data on the
interrupt endpoint ?

thanks in advance.

-- 
Gallon sylvestre
Rathaxes Core Developper / LSE researcher
kernel developer for adeneo and OpenBSD fan
http://devsyl.blogspot.com/ | www.rathaxes.eu

Reply via email to