When ep_config is called from the simple_source_thread function, it
correctly opens a new fd for this endpoint. Memcpy -ing the endpoint
descriptor data returns a pointer to memory, as it should. However,
when the function enters the status = write(fd, buf, (4+USB_DT_ENDPOINT_SIZE);
portion of the code, I receive the EBUSY error. From consulting the
gadgetfs kernel code, it seems that ep_open is having a problem such
It happens on endpoint open(), and also when trying to write a response on ep0 in certain cases. If you enabled DEBUG (as I suggested) the "dmesg" output should help say which it was.
Maybe you forgot to use the "interrupt" endpoint file descriptor when writing your response.
that the endpoint data->state is not entering STATE_EP_DISABLE loop as it should be to write the data. It appears to me that the data structure and inode values are filled in without my knowledge, and are not attributes that I can set. Is there a way to set this in the user level code initially so that the endpoint will configure properly?
From user space, just stick to the file system API ... if for any reason that's not working, it's just a bug. It should keep you from being too wrong. In this case it sounds like you've strayed off the path of righteousness by some indeterminate amount.
- Dave
------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
