]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/performance-audio-sr.git/blobdiff - pasdk/test_dsp/framework/systemStream.c
PASDK-71:Add SS status for ASIT/ASOT/AIP/AFP/SS peak load
[processor-sdk/performance-audio-sr.git] / pasdk / test_dsp / framework / systemStream.c
index 667dafbee5a387ed607a097d2422a349683a89f3..6b71de640d1e75aada2ea8dcba21311a2118410d 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
-Copyright (c) 2016, Texas Instruments Incorporated - http://www.ti.com/
+Copyright (c) 2017, Texas Instruments Incorporated - http://www.ti.com/
 All rights reserved.
 
 * Redistribution and use in source and binary forms, with or without 
@@ -638,6 +638,24 @@ asm("_systemStream3Transmit .set 0");
 //#include <ti/bios/include/log.h>
 //#include <ti/sysbios/knl/Task.h>
 
+#if 1 // FL: debug
+UInt16 gCpuLoad;
+UInt8 gPeakCpuLoad;
+UInt8 gAsipLoad;
+UInt8 gPeakAsipLoad;
+UInt8 gAsopLoad;
+UInt8 gPeakAsopLoad;
+UInt8 gAipLoad;
+UInt8 gPeakAipLoad;
+UInt8 gAfpLoad;
+UInt8 gPeakAfpLoad;
+UInt8 gSsLoad;
+UInt8 gPeakSsLoad;
+//UInt32 gHwiLoad;
+//UInt32 gSwiLoad;
+#endif
+
+
 Int32
 systemStream5Compute(
     const PAF_SST_Params *pP, 
@@ -651,8 +669,64 @@ systemStream5Compute(
     Load_getTaskLoad(Task_getIdleTask(), &stat);
     pStatus->cpuLoad = (100 - Load_calculateLoad(&stat)) * 256;
     if (pStatus->peakCpuLoad < pStatus->cpuLoad)
+    {
         pStatus->peakCpuLoad = pStatus->cpuLoad;
+    }
+  
+    // Compute ASIT load
+    Load_getTaskLoad(TaskAsip, &stat);
+    pStatus->asitLoad = Load_calculateLoad(&stat);
+    if (pStatus->peakAsitLoad < pStatus->asitLoad)
+    {
+        pStatus->peakAsitLoad = pStatus->asitLoad;
+    }
+    
+    // Compute ASOT load
+    Load_getTaskLoad(TaskAsop, &stat);
+    pStatus->asotLoad = Load_calculateLoad(&stat);
+    if (pStatus->peakAsotLoad < pStatus->asotLoad)
+    {
+        pStatus->peakAsotLoad = Load_calculateLoad(&stat);
+    }
 
+    // Compute AIP Task load
+    Load_getTaskLoad(TaskAip, &stat);
+    pStatus->aipLoad = Load_calculateLoad(&stat);
+    if (pStatus->peakAipLoad < pStatus->aipLoad)
+    {
+        pStatus->peakAipLoad = Load_calculateLoad(&stat);        
+    }
+
+    // Compute AFP Task load
+    Load_getTaskLoad(TaskAfp, &stat);
+    pStatus->afpLoad = Load_calculateLoad(&stat);
+    if (pStatus->peakAfpLoad < pStatus->afpLoad)
+    {
+        pStatus->peakAfpLoad = Load_calculateLoad(&stat);        
+    }
+    
+    // Compute System Stream Task load
+    Load_getTaskLoad(TaskSystemStream, &stat);
+    pStatus->ssLoad = Load_calculateLoad(&stat);
+    if (pStatus->peakSsLoad < pStatus->ssLoad)
+    {
+        pStatus->peakSsLoad = Load_calculateLoad(&stat);        
+    }
+
+    // FL: debug
+    gCpuLoad = pStatus->cpuLoad>>8;
+    gAsipLoad = pStatus->asitLoad;
+    gAsopLoad = pStatus->asotLoad;
+    gAipLoad = pStatus->aipLoad;
+    gAfpLoad = pStatus->afpLoad;
+    gSsLoad = pStatus->ssLoad;
+    gPeakCpuLoad = pStatus->peakCpuLoad>>8;
+    gPeakAsipLoad = pStatus->peakAsitLoad;
+    gPeakAsopLoad = pStatus->peakAsotLoad;
+    gPeakAipLoad = pStatus->peakAipLoad;
+    gPeakAfpLoad = pStatus->peakAfpLoad;
+    gPeakSsLoad = pStatus->peakSsLoad;
+    
     return 0;
 }