This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: AT91 USB driver


Hello Gábor,

I looked through the Atmel summary and datasheets, and every place it's listed says that EP0 has a max size of 64 bytes. What value are you using for the "Max Packet Size" in the device descriptor? If the driver is expecting 64, but the device descriptor tells the host to send 8 at a time, some packets will fly back and forth but it won't enumerate. I've made that mistake before with other USB chips.

Frank


Gábor Török wrote:
Hi!

I'm testing the driver, but I did some modifications, because Atmel
datasheet says that before any other registers are written, the pullup
must be enabled. But the only consequence is some extra USB resets, so
I think that shouldn't rendered the USB unusable.
I included the extra endpoints in the USB driver, so they get disabled
correctly.

One stange thing was, that the Atmel datasheet said fo AT91SAM7SE,
that endpoint 0 (main control endpoint) FIFO is 64 bytes long, but in
any other devices it is 8 bytes long. I have written 64 bytes in the
USB driver for FIFO size. I was struggling to get driver working for
some days. The good thing was, that I found other bugs and partly
corrected that pullup thing at initialization. Today I had the idea to
reduce the FIFO size for EP0 to 8 bytes, and it worked. I will have a
look into the USB specification and the code to see if it is an error
in the Atmel datasheet, or is it a bug in the A91 USB driver or is it
a problem with my computer.

It works with SAM7SE, the original worked with SAM7 (this one should
also), and it should work with SAM7X and SAM7XC.

Until then, I commit it to my SVN and later today I will create a
public read access to allow testing. When it is well tested, I will
send the patches.

Gábor Török


On Sat, Oct 4, 2008 at 10:39 PM, Frank Pagliughi wrote:
Gábor Török wrote:
Hi!

Have anybody tried the AT91 USB driver with other controllers than the
AT91SAM7S (I only tried with this)? I would like to use it for the
AT91SAM7SE, and after a quick compsrison between the USB registers of
the two chips, I noticed no major differences. The only thing was,
that the SAM7SE has more endpoints and the pullup is integrated, but
all the register and bit definitions are the same (except the bit
controlling the pullup and the registers of the extra endpoints).

Gábor


I haven't tried it with anything other then the 7S, but if you're going to
try it with the 7SE, get the latest CSV sources. There have been a few bug
fixes to the driver in the last month or so. Let me know how it turns out -
or if you have any problems. I've been looking at that driver recently.

- Frank Pagliughi



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]