Hi all!
I have a strange error when I'm trying to insert task load feature in my code. I get a such error when assign qHandle a new value, Load_Module_State_taskList():
error #515: a value of type "int" cannot be assigned to an entity of type "ti_sysbios_knl_Queue_Handle"
I can't understand what I do wrong! This is my code:
#include <xdc/std.h> #include <ti/sysbios/io/GIO.h> #include <ti/sysbios/io/IOM.h> #include <xdc/runtime/Memory.h> #include <ti/sysbios/heaps/HeapMem.h> #include <xdc/runtime/IHeap.h> #include <xdc/runtime/Error.h> #include <xdc/runtime/Log.h> #include <xdc/runtime/System.h> #include <ti/sysbios/BIOS.h> #include <ti/sysbios/knl/Semaphore.h> #include <ti/sysbios/knl/Queue.h> #include <ti/sysbios/knl/Task.h> #include <ti/sysbios/utils/Load.h> #include <mcasp_drv.h> #include <Audio.h> #include <ti/sdo/edma3/drv/edma3_drv.h> #include <include/McaspLocal.h> #include "stdio.h"
...
Void postUpdateFxn(); Void postUpdateFxn() { Task_Handle task; Queue_Elem *qElem = NULL; Queue_Handle qHandle; Load_Stat stat; UInt taskKey; /* Protect access to Load module's taskList */ taskKey = Task_disable(); qHandle = Load_Module_State_taskList(); /* ERROR!!! */ qElem = Queue_head(qHandle); /* For each task... */ while (qElem != (Queue_Elem *)Load_Module_State_taskList()) { task = ((Load_HookContext *)qElem)->threadHandle; /* Log the Task load. */ if (Load_getTaskLoad(task, &stat) == TRUE) { System_printf("\nTaskload %d ...\n", Load_calculateLoad(&stat)); System_flush(); } qElem = Queue_next(qElem); } Task_restore(taskKey); return; }
Could you please confirm whether my code is right?
Regards,
Bakir