comparison TaskManager/kernel/ppe/HTask.h @ 1462:8cf62aea798f draft

HTask/TaskList fix (on going)
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 14 Jul 2012 19:15:09 +0900
parents 8bd889db45a1
children cb57420a8219
comparison
equal deleted inserted replaced
1427:db5c022d871c 1462:8cf62aea798f
2 #define INCLUDED_HTASK 2 #define INCLUDED_HTASK
3 3
4 #include "base.h" 4 #include "base.h"
5 #include "types.h" 5 #include "types.h"
6 #include "Task.h" 6 #include "Task.h"
7 #include "TaskList.h"
7 #include "TaskQueue.h" 8 #include "TaskQueue.h"
8 #include "QueueInfo.h" 9 #include "QueueInfo.h"
9 #include "TaskLog.h" 10 #include "TaskLog.h"
10 //#include <stdio.h> 11 //#include <stdio.h>
11 12
88 command, index, (unsigned long)addr, size); 89 command, index, (unsigned long)addr, size);
89 } 90 }
90 char *p = (char *)addr; char b = *p; 91 char *p = (char *)addr; char b = *p;
91 p = (char *)(addr+size-1); b += *p; 92 p = (char *)(addr+size-1); b += *p;
92 #endif 93 #endif
93 Task *t = (Task*)rbuf; 94 Task *t = ((TaskList*)rbuf)->tasks;
94 t->set_inData_t(index, addr,size); 95 t->set_inData_t(index, addr,size);
95 } 96 }
96 void set_outData_t(int index, memaddr addr, int size) { 97 void set_outData_t(int index, memaddr addr, int size) {
97 #ifdef EARLY_TOUCH 98 #ifdef EARLY_TOUCH
98 if ((unsigned long)addr&0xf) { 99 if ((unsigned long)addr&0xf) {
100 command, index, (unsigned long)addr, size); 101 command, index, (unsigned long)addr, size);
101 } 102 }
102 char *p = (char *)addr; char b = *p; 103 char *p = (char *)addr; char b = *p;
103 p = (char *)(addr+size-1); b += *p; 104 p = (char *)(addr+size-1); b += *p;
104 #endif 105 #endif
105 Task *t = (Task*)rbuf; 106 Task *t = ((TaskList*)rbuf)->tasks;
106 t->set_outData_t(index, addr,size); 107 t->set_outData_t(index, addr,size);
107 } 108 }
108 void set_param_t(int index, memaddr param) { 109 void set_param_t(int index, memaddr param) {
109 if (command==TaskArray1) { 110 if (command==TaskArray1) {
110 Task *t = (Task*)rbuf; 111 Task *t = ((TaskList*)rbuf)->tasks;
111 t->set_param_t(index, param); 112 t->set_param_t(index, param);
112 } else { 113 } else {
113 this->param = param; 114 this->param = param;
114 } 115 }
115 } 116 }