hsa-runtime integration
Change-Id: I48968966ffe164218ebff88d0e3a1268e96bf1dd
Šī revīzija ir iekļauta:
revīziju iesūtīja
Evgeny Shcherbakov
vecāks
c533229bc1
revīzija
4174f07fd1
@@ -0,0 +1,59 @@
|
||||
#include <assert.h>
|
||||
|
||||
#include "thread_trace.h"
|
||||
|
||||
namespace pm4_profile {
|
||||
|
||||
bool ThreadTrace::Init(const ThreadTraceConfig* config) {
|
||||
if (config) {
|
||||
ttConfig_ = *config;
|
||||
} else {
|
||||
InitThreadTraceConfig(&ttConfig_);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void ThreadTrace::InitThreadTraceConfig(ThreadTraceConfig* config) const {
|
||||
memset(config, 0, sizeof(ThreadTraceConfig));
|
||||
|
||||
config->threadTraceTargetCu = 0;
|
||||
config->threadTraceVmIdMask = 0;
|
||||
config->threadTraceMask = 0;
|
||||
config->threadTraceTokenMask = 0;
|
||||
config->threadTraceTokenMask2 = 0;
|
||||
}
|
||||
|
||||
uint8_t ThreadTrace::GetCuId() {
|
||||
uint32_t cuId = ttConfig_.threadTraceTargetCu;
|
||||
assert((cuId <= 15) && "Cu Id must be between 0 and 15");
|
||||
return cuId;
|
||||
}
|
||||
|
||||
uint8_t ThreadTrace::GetVmId() {
|
||||
uint32_t vmId = ttConfig_.threadTraceVmIdMask;
|
||||
assert((vmId <= 2) && "VmId must be between 0 and 2");
|
||||
return vmId;
|
||||
}
|
||||
|
||||
uint32_t ThreadTrace::GetMask() {
|
||||
uint32_t ttMask = ttConfig_.threadTraceMask;
|
||||
const uint32_t validMask = 0x00C0D0;
|
||||
assert(((ttMask & validMask) == 0) && "Mask should have bits [4,6,7] set to Zero");
|
||||
return ttMask;
|
||||
}
|
||||
|
||||
uint32_t ThreadTrace::GetTokenMask() {
|
||||
uint32_t tokenMask = ttConfig_.threadTraceTokenMask;
|
||||
const uint32_t validMask = 0xFF000000;
|
||||
assert(((tokenMask & validMask) == 0) && "TokenMask should have bits [31:25] set to Zero");
|
||||
return tokenMask;
|
||||
}
|
||||
|
||||
uint32_t ThreadTrace::GetTokenMask2() {
|
||||
uint32_t tokenMask2 = ttConfig_.threadTraceTokenMask2;
|
||||
const uint32_t validMask = 0xFFFF0000;
|
||||
assert(((tokenMask2 & validMask) == 0) && "TokenMask2 should have bits [31:16] set to Zero");
|
||||
return tokenMask2;
|
||||
}
|
||||
|
||||
} // pm4_profile
|
||||
Atsaukties uz šo jaunā problēmā
Block a user