#include <revolution/ai.h> void AIInitDMA(u32 start_addr, u32 length);
| start_addr | Start address of DMA transaction. Must be 32-byte aligned. |
|---|---|
| length | Length of DMA transaction. Must be 32-byte aligned. |
None.
The AIInitDMA function programs the DMA start address and size for the AI DMA controller.
AI-DMA transactions will not start immediately even if the AIInitDMA function is called. In addition, there is no effect on the AI-DMA transactions being processed. The AIInitDMA function programs the next AI-DMA parameters for the AI DMA controller.
If AI DMA is stopped, call the AIInitDMA function and then call the AIStartDMA function to start the AI DMA transaction. If the AI DMA is operating, AI DMA transaction can be started based on the new parameter as soon as the the AI DMA transaction being processed has ended by calling the AIInitDMA function. It is not necessary to call the AIStartDMA function again at this time. Also, the AI DMA transaction will be started again based on the old parameter if the AI DMA transaction being processed has completed sooner than a call to the AIInitDMA function.
The AIStopDMA function must be called explicitly in order to stop the AI DMA.
2006/03/01 Initial version.
CONFIDENTIAL