Hi

I have developed dm320 udc these periods,and my program is based
on omap_udc.c in kernel tree.I meet a proble:
when ep0 interrupt is invoked,it enters my dm320_ep0_control function.
Below is my function body:
       struct dm320_ep *ep0 = &udc->ep[0];
struct dm320_req *req = NULL;

    INFO("the ep's name is %s,the maxpacket is %d\n",ep0->name,ep0-
>maxpacket );
    
if (!list_empty(&ep0->queue)){
req = container_of(ep0->queue.next, struct dm320_req, queue);
}

I can get the  ep0->name which i assigned at static unsigned __init
dm320_ep_setup routine.But list_empty(&ep0->queue)) is true,it means
there is no item at ep0 list.I do INIT_LIST_HEAD(&ep->queue) for every
ep.Why this would happen?

I look through other udc programs(i base on them) at kernel tree,i find
there is not place to add item for ep list except for xxx_ep_quene
routine,as there
are:
if (likely (req != 0))
list_add_tail(&req->queue, &ep->queue);
Then,then the xxx_ep_quene will be invoked?
I find my dm320_eq_quene isn't invoked,and i can't finish bus enumerate
as my ep list is empty.
Are there any other place that can add data item to ep list?i need to do
it by hand or the usb core will do it?

thx.




-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to