get data failed with DMA

Sauce.Cheng chmhou at sina.com
Tue May 12 11:59:00 EST 2009


i tried to fetch data from periphial memories with DMA

the flow as following

flags = claim_dma_lock();
disable_dma(DMA_CH);
clear_dma_ff();
set_dma_count(DMA_CH, 4);
set_dma_addr(DMA_CH, virt_to_bus(kv_buf));
release_dma_lock(flags);
enable_dma(DMA_CH);

the code hault at disable_dma(DMA_CH)

in addition, i defined DMA_CH as 0 for channel 0
'kv_buf' is an kernel space virtual address. i can red the correct value of
periphal from this address
i supposed the fault along with the configured of registers about DMA in
processer. but i am not sure.
give some suggestion about this, thanks!

-- 
View this message in context: http://www.nabble.com/get-data-failed-with-DMA-tp23494879p23494879.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.




More information about the Linuxppc-dev mailing list