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
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel