Alan Stern <stern <at> rowland.harvard.edu> writes:

> 
> On Wed, 21 Mar 2007, nesta wrote:
> 
> > thanks a lot Alan for your help but 
> > i wanna tell u somthing:
> > it is about usb.c did u take a look at this file?  u will find in the 
function 
> > named by
> >  autoconfig,
> > that
> > it does not contain any case for omap_udc but it only contains cases for 
> > net2280,  pxa2xx_udc,   goku_udc and sh_udc
> > so i have increased a case for omap_udc as follows:
> >  
> > ********************************* 
> > else if (stat (DEVNAME = "omap_udc", &statb) == 0) {
> > 
> > HIGHSPEED = 0;
> > 
> > device_desc.bcdDevice = __constant_cpu_to_le16 (0x0106),
> > 
> > fs_source_desc.bEndpointAddress = USB_DIR_IN | 1;
> > 
> > EP_IN_NAME = "ep1in";
> > 
> > 
> > fs_sink_desc.bEndpointAddress = USB_DIR_OUT | 2;
> > 
> > EP_OUT_NAME = "ep1out";
> > 
> > source_sink_intf.bNumEndpoints = 3;
> > 
> > fs_status_desc.bEndpointAddress = USB_DIR_IN | 3;
> > 
> > EP_STATUS_NAME = "ep3in";
> > 
> > 
> > }
> > 
> > ***************************************************************
> > 
> > do u have any suggestion about above part  that i have increased?
> 
> You must have gotten hold of an old version of usb.c.  The version I have
> and the version available on the web site:
> 
>       http://www.linux-usb.org/gadget/usb.c
> 
> both contain this code in autoconfig():
> 
>       /* OMAP 1610 and newer devices, full speed only, fifo mode 0 or 3 */
>       } else if (stat (DEVNAME = "omap_udc", &statb) == 0) {
>               HIGHSPEED = 0;
>               device_desc.bcdDevice = __constant_cpu_to_le16 (0x0106),
> 
>               fs_source_desc.bEndpointAddress = USB_DIR_IN | 1;
>               EP_IN_NAME = "ep1in-bulk";
>               fs_sink_desc.bEndpointAddress = USB_DIR_OUT | 2;
>               EP_OUT_NAME = "ep2out-bulk";
> 
>               source_sink_intf.bNumEndpoints = 3;
>               fs_status_desc.bEndpointAddress = USB_DIR_IN | 3;
>               EP_STATUS_NAME = "ep3in-int";
> 
> Alan Stern
> 


Dear Alan,
sorry for being late,i have tried the new version that u sent me, 
finally the endpoint files have been created but still have the following 
problem:
now if i want to send any data to the host, i should open the in-endpoint file 
then write the data to this file, right?
this is done in the function named by simple_source_thread:
where the writing is done by the following line:

status = write (source_fd, buf, len); 

when i put the previous line between 2 printf's i.e as follows:

printf("1\n");
status = write (source_fd, buf, len);
printf("2\n");

printing number 1 is done but number 2 is not printed.
so why this happen?
is it waiting for Acknowledge or what?
if so, should i read these data at the host side or what?

thanks in advacne





-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
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