Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Apr 2005 00:00:29 -0700 (PDT)
From:      paradox <algorist2000@yahoo.com>
To:        freebsd-usb@freebsd.org
Subject:   Re: Is the freebsd usb generic device driver complete?
Message-ID:  <20050430070029.17043.qmail@web53606.mail.yahoo.com>
In-Reply-To: 6667

next in thread | raw e-mail | index | archive | help
sorry, i wrote the last mail in linux,can't check the
source codes,so i made some mistakes.

 The ival is set to USBD_DEFAULT_INTERVAL, whose value
should be -1,In uhci_open function, it will be convert
to pipe->endpoint>edesc->binterval automatically. 

 My machine are uhci interface, with the usb key
linked to the usb bus directly.In linux , the driver
first set the address to 00 02,then get descriptors,
at last,it set the configuration to 0x 00 01, then
send 5 bytes to the usb ckey and got a ACK response.
In freebsd, it first set the address to 00 02 also,
but it insert a GET_STATUS packet in thosr
GET_DESCRIPTOR packet and got 0x 00 00 resopnse.It
also set the configuration to 0x 00 01(two times, one
is when I load usb.ko,another time is when I load
ugen.ko.when I open the nodes. it send CLEAT_FEATURE
packet twice, then send a OUT packet just like in the
linux environment, but got a NAK response.
  
  


--- Bernd Walter <ticso@cicely12.cicely.de> wrote:
> On Wed, Apr 27, 2005 at 11:24:15PM -0700, paradox
> wrote:
> > I am using a low speed usb key in freebsd
> > 5.3Release,It has 2 interrupt pipe besides the
> control
> > pipe,the IN pipe is endpoint 1,its interval is 20,
> OUT
> > pipe is endpoint 2, interval is 10. I wrote a
> driver
> > for it in linux,and everything is ok.when I plug
> the
> > key in a system with freebsd 5.3release, it find
> the
> > key,make 3 nodes ugen0,ugen0.1 and ugen0.2 for it,
> I
> > can get those descriptors from ugen0,but I can't
> wrote
> > anything in the OUT pipe ugen0.2. from usb
> analyser I
> > found the system send the write packet,just like
> in
> > linux,but the return is NAK.
> 
> Getting NAKs is the normal way for a device to tell,
> that it
> has nothing to say or can't take the offered data.
> Either your device really has nothing to say or
> isn't configured
> correctly.
> There is nothing more to say without knwoing more
> about your
> device and it's protocol.
> 
> > I read the code in ugen.c,usbdi.c,uhci.c,usb.c and
> > usbdi_util.c,and don't know why it set the ival to
> > USB_DEFAULT_IVAL(0),I contact with Lennart
> Augustsson
> > whose name is in the head of those usb codes, he
> said
> > he has never run those code in freebsd and he
> didn't
> > write the intr write code!
> 
> I can't find USB_DEFAULT_IVAL inside FreeBSD's usb
> source.
> Most of the files you mention don't even contain the
> string ival.
> 
> > the ugen.c, I hope i can made a patch for it.can
> > anyone tell me how the intr write designs in the
> > ugen.c, and why it only use the USB_DEFAULT_IVAL? 
> 
> 
> USB_DEFAULT_IVAL doesn't exist.
> You should be more specific about this.
> 
> -- 
> B.Walter                   BWCT               
> http://www.bwct.de
> bernd@bwct.de                                 
> info@bwct.de
> 
> 

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 



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