[U-Boot] NetRxPackets

Vitaly Kuzmichev vkuzmichev at mvista.com
Wed Jan 19 09:14:05 CET 2011


Hi Marcel,

Marcel wrote:
>> Not sure that branch is anything up to date....
>
> hmmm.  What branch is best to work on for this code ?

If someone sends USB-CDC patches they usually are applied into master
branch of u-boot-usb.git repository:
http://git.denx.de/cgi-bin/gitweb.cgi?p=u-boot/u-boot-usb.git;a=summary

AFAIK, master branch of u-boot main repository is also working well, but
I haven't checked whether all recent patches are pulled into main
repository.
If you are using another version of u-boot (one of the previous
releases) the driver in your version may be broken.

According to the log from "Usage of DMA" thread I think your gadget
stack is up to date.

>>>>> req->buf = (u8 *) NetRxPackets[0];
>>
>> *maybe* "req" itself is not allocated?
> 
> Good question. My code that rejects the buffer is this :
> 
> [...]
>         if (!_req || !_req->complete
>                         || !_req->buf || !list_empty(&req->queue)) {
>           
>                 DBG("invalid request\n");
>                 if(!_req) debug("NO REQUEST\n");
>                 if(!_req->complete) debug("NO REQUEST COMPLETE\n");
>                 if(!_req->buf) debug("NO REQUEST BUF\n");
>                 if(!list_empty(&req->queue)) debug("NO LIST EMPTY\n");
>                 return -EINVAL;
>         }
> 
> It just keeps failing with "NO REQUEST BUF". I feel like I'm staring at a typo 
> for days and just don't see it.

I suppose that usage of kzalloc in usba_ep_alloc_request (if you haven't
changed it) may be not well. at91_udc driver (for example) uses static
pool for requests allocation.

Anyway it's strange. I have a suspicion that buf was set to NULL
somewhere inside atmel_usba_udc.


____
With best regards,
Vitaly.


More information about the U-Boot mailing list