[ECOS] USB on the AT91SAM7S

Frank Pagliughi fpagliughi@mindspring.com
Fri Feb 29 16:18:00 GMT 2008


> It does work. I've used it for real applications.
>   
Great! Sounds like I'm doing something wrong. I'll trek through the snow 
today to get my bus analyzer and look at it over the weekend.
>> - The USB test application doesn't compile for the board
>>     
>
> True. In its default configuration it needs too much RAM. When testing
> i hacked it so that it uses less threads and smaller stacks.  Running
> the test then shows up what appears to be a hardware problem. The
> first received packet on an EP does not cause an interrupt. You only
> get the interrupt when the second packet is received. After that all
> works well.
>   
The AT91 is probably the most "current" USB platform and driver (which 
is why I went out and bought one), so it would be great to have the test 
working - at least as an example for people like me trying to get it to 
run the first time. Sounds like your "hacked" version would be better 
than the version that's checked in now.
>   
>> - All three of the general purpose endpoints are defined as receivers  
>> (usbs_rx_endpoint). Not one transmitter.
>>     
>
> It will look at the enumeration data and determine the direction of
> the endpoints. What does your enumeration say?
>   
I have my own test application that has one IN and one OUT bulk 
endpoint. It uses the lower-level non-blocking API, with functions like:
     usbs_start_tx_buffer(usbs_tx_endpoint* ep, ...);

The first parameter is a pointer to a transmit endpoint 
(usbs_tx_endpoint). If the driver doesn't define any, how do I use this 
function?

Frank

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss



More information about the Ecos-discuss mailing list