view include/TaskManager/CellDmaManager.h @ 240:f8182c7058b5

fix
author k098586@localhost.localdomain
date Fri, 29 May 2009 15:45:09 +0900
parents ae6aa53faf70
children 8382f0f8c0b4
line wrap: on
line source

#ifndef INCLUDED_CELL_DMA_MANAGER
#define INCLUDED_CELL_DMA_MANAGER

#ifndef INCLUDED_BASE_H_
#  include "base.h"
#endif

#ifndef INCLUDED_DMA_MANAGER
#  include "DmaManager.h"
#endif

#include <spu_mfcio.h>

class CellDmaManager : public DmaManager {
public:
    BASE_NEW_DELETE(CellDmaManager);

    typedef struct dma_list {
	uint32 addr;
	uint32 size;
    } DmaList, *DmaListPtr;

    /* variables */

    /* functions */
    void dma_load(void *buf, uint32 addr, uint32 size, uint32 mask);
    void dma_store(void *buf, uint32 addr, uint32 size, uint32 mask);
    void dma_wait(uint32 mask) ;

    void mail_write(uint32 data);
    uint32 mail_read(void);
    void dma_loadList(ListDataPtr list, void *buff, uint32 mask);
    void dma_storeList(ListDataPtr, void *buff, uint32 mask);
};

#endif