mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-25 16:56:35 +00:00
tools/intel_error_decode: decode gen4+ fences
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
982d14e34b
commit
d510953ef3
@ -209,6 +209,28 @@ print_pgtbl_err(unsigned int reg, unsigned int devid)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
print_snb_fence(unsigned int devid, uint64_t fence)
|
||||||
|
{
|
||||||
|
printf(" %svalid, %c-tiled, pitch: %i, start: 0x%08x, size: %u\n",
|
||||||
|
fence & 1 ? "" : "in",
|
||||||
|
fence & (1<<1) ? 'y' : 'x',
|
||||||
|
(int)(((fence>>32)&0xfff)+1)*128,
|
||||||
|
(uint32_t)fence & 0xfffff000,
|
||||||
|
(uint32_t)(((fence>>32)&0xfffff000) - (fence&0xfffff000) + 4096));
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
print_i965_fence(unsigned int devid, uint64_t fence)
|
||||||
|
{
|
||||||
|
printf(" %svalid, %c-tiled, pitch: %i, start: 0x%08x, size: %u\n",
|
||||||
|
fence & 1 ? "" : "in",
|
||||||
|
fence & (1<<1) ? 'y' : 'x',
|
||||||
|
(int)(((fence>>2)&0x1ff)+1)*128,
|
||||||
|
(uint32_t)fence & 0xfffff000,
|
||||||
|
(uint32_t)(((fence>>32)&0xfffff000) - (fence&0xfffff000) + 4096));
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
print_i915_fence(unsigned int devid, uint64_t fence)
|
print_i915_fence(unsigned int devid, uint64_t fence)
|
||||||
{
|
{
|
||||||
@ -240,8 +262,10 @@ print_i830_fence(unsigned int devid, uint64_t fence)
|
|||||||
static void
|
static void
|
||||||
print_fence(unsigned int devid, uint64_t fence)
|
print_fence(unsigned int devid, uint64_t fence)
|
||||||
{
|
{
|
||||||
if (IS_965(devid)) {
|
if (IS_GEN6(devid) || IS_GEN7(devid)) {
|
||||||
return;
|
return print_snb_fence(devid, fence);
|
||||||
|
} else if (IS_GEN4(devid) || IS_GEN5(devid)) {
|
||||||
|
return print_i965_fence(devid, fence);
|
||||||
} else if (IS_GEN3(devid)) {
|
} else if (IS_GEN3(devid)) {
|
||||||
return print_i915_fence(devid, fence);
|
return print_i915_fence(devid, fence);
|
||||||
} else {
|
} else {
|
||||||
@ -350,7 +374,7 @@ read_data_file (FILE *file)
|
|||||||
if (matched == 1)
|
if (matched == 1)
|
||||||
print_instdone (devid, -1, reg);
|
print_instdone (devid, -1, reg);
|
||||||
|
|
||||||
matched = sscanf (line, " fence[%i] = %8Lx\n", ®, &fence);
|
matched = sscanf (line, " fence[%i] = %Lx\n", ®, &fence);
|
||||||
if (matched == 2)
|
if (matched == 2)
|
||||||
print_fence (devid, fence);
|
print_fence (devid, fence);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user