[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