view include/TaskManager/FifoDmaManager.h @ 267:943c2ebe4483 draft

merge 172 264
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 03 Jun 2009 23:58:22 +0900
parents 028ffc9c0375
children 3fc86ddf5d1c
line wrap: on
line source

#ifndef INCLUDED_FIFO_DMA_MANAGER
#define INCLUDED_FIFO_DMA_MANAGER

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

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

#ifndef INCLUDED_MAIL_MANAGER
#  include "MailManager.h"
#endif

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

    /* variables */
    MailManager *mailManager;
    MailQueuePtr mail_recvQueue;
    MailQueuePtr mail_sendQueue;

    /* 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);
    //void* dma_loadList(ListDataPtr list, void *buff, uint32 mask);
};

#endif