annotate include/TaskManager/CellDmaManager.h @ 242:8382f0f8c0b4

dma_wait
author e065746@localhost.localdomain
date Sun, 31 May 2009 15:55:00 +0900
parents f8182c7058b5
children e19d2c9e85b0 6bb8725e60ae
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
32
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
1 #ifndef INCLUDED_CELL_DMA_MANAGER
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
2 #define INCLUDED_CELL_DMA_MANAGER
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
3
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
4 #ifndef INCLUDED_BASE_H_
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
5 # include "base.h"
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
6 #endif
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
7
32
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
8 #ifndef INCLUDED_DMA_MANAGER
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
9 # include "DmaManager.h"
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
10 #endif
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
11
88
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
12 #include <spu_mfcio.h>
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
13
242
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 240
diff changeset
14 #define SPU_PROFILE 1
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 240
diff changeset
15
32
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
16 class CellDmaManager : public DmaManager {
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
17 public:
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
18 BASE_NEW_DELETE(CellDmaManager);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
19
88
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
20 typedef struct dma_list {
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
21 uint32 addr;
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
22 uint32 size;
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
23 } DmaList, *DmaListPtr;
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
24
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
25 /* variables */
242
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 240
diff changeset
26 unsigned int wait_time, busy_time;
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 240
diff changeset
27 unsigned long long global_busy_time, global_wait_time;
88
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
28
32
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
29 /* functions */
88
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
30 void dma_load(void *buf, uint32 addr, uint32 size, uint32 mask);
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
31 void dma_store(void *buf, uint32 addr, uint32 size, uint32 mask);
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
32 void dma_wait(uint32 mask) ;
242
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 240
diff changeset
33 void start_dmawait_profile();
8382f0f8c0b4 dma_wait
e065746@localhost.localdomain
parents: 240
diff changeset
34 void end_dmawait_profile();
88
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
35
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
36 void mail_write(uint32 data);
504899860e66 *** empty log message ***
gongo
parents: 58
diff changeset
37 uint32 mail_read(void);
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
38 void dma_loadList(ListDataPtr list, void *buff, uint32 mask);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
39 void dma_storeList(ListDataPtr, void *buff, uint32 mask);
32
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
40 };
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
41
f7fd92a1d7bb *** empty log message ***
gongo
parents:
diff changeset
42 #endif