Mercurial > hg > Game > Cerium
view TaskManager/kernel/schedule/DmaManager.h @ 603:57ec231bc8ac draft
long -> memaddr (64 or 32)
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 07 Nov 2009 14:13:29 +0900 |
parents | 92b0d490e839 |
children | 7ba4ad4538b1 |
line wrap: on
line source
#ifndef INCLUDED_DMA_MANAGER #define INCLUDED_DMA_MANAGER #include "base.h" #include "ListData.h" #include "types.h" enum dma_tag { DMA_READ = 25, DMA_WRITE = 27, // DMA_READ_IN_LIST = 29, // DMA_READ_OUT_LIST = 30, DMA_READ_TASKLIST = 31, }; class DmaManager { public: virtual ~DmaManager() {}; BASE_NEW_DELETE(DmaManager); // API for DMA transfer virtual void dma_load(void *buf, memaddr addr, uint32 size, uint32 mask) {} virtual void dma_store(void *buf,memaddr addr, uint32 size, uint32 mask) {} virtual void dma_wait(uint32 mask) {} virtual void show_dma_wait(int cpu) {} // API for SPU inbound/outbound mailbox virtual void mail_write(memaddr data) {} virtual memaddr mail_read() {return 0;} // API for MFC list DMA transfer virtual void dma_loadList(ListDataPtr list, void *,uint32 mask) {} virtual void dma_storeList(ListDataPtr, void *buff, uint32 mask) {} }; #endif