public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] {Spam?} usage of DMA
@ 2011-01-11 21:51 Marcel
  2011-01-16  7:56 ` Albert ARIBAUD
  0 siblings, 1 reply; 10+ messages in thread
From: Marcel @ 2011-01-11 21:51 UTC (permalink / raw)
  To: u-boot

Hi,

I'm implementing the USB device controller for the SAM9G45 and got to a point 
where I've got endpoint 0 to work, so basically all descriptors are received 
by the host.
I did however have an issue getting past this and found it's related to the 
linux driver using DMA for all the other endpoints.

Somehow I managed to get endpoint 3 (status) to work with ether.c and got the 
device recognised as an ethernet gadget, however endpoints 1 and 2 still don't 
work. This was using DMA.

I'm a little stuck with the DMA part and have some questions about it :

1) I suppose this can also work work without DMA and it would make the driver 
a whole lot simpler I guess. Is this prefered in U-boot ?

2) If I want to use DMA so I can port most things from Linux, how would I deal 
with functions like 
dma_sync_single_for_device (doesn't seem to exist)
dma_map_single
dma_unmap_single

I tried to make it work without DMA and implemented the part that switched off 
DMA for the controller. I think this code works well.
Unfortunately I have no idea how to read data from the endpoints in this case 
yet. I see that data arrives (I see the out packet arrives and it tries to 
read) but I probably don't read it correctly.

I guess question 1 is most important. If using DMA is not preferred I will try 
to make it work without DMA and can forget about question 2.

Best regards,
Marcel 

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2011-01-19 22:44 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-01-11 21:51 [U-Boot] {Spam?} usage of DMA Marcel
2011-01-16  7:56 ` Albert ARIBAUD
2011-01-17 20:48   ` [U-Boot] " Marcel
2011-01-18 13:36     ` Vitaly Kuzmichev
2011-01-18 14:06       ` Vitaly Kuzmichev
2011-01-18 18:12         ` Marcel
2011-01-18 18:11       ` Marcel
2011-01-19  9:04         ` Vitaly Kuzmichev
2011-01-19 21:33           ` Marcel
2011-01-19 22:44           ` Marcel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox