nouveau/parser: Take a FILE* in DUMP_*_MTHD_DATA
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
This commit is contained in:
committed by
Marge Bot
parent
fb9524f5dd
commit
76edce98f7
@@ -197,7 +197,7 @@ flush_mthd(struct mme_tu104_sim *sim)
|
||||
break;
|
||||
default:
|
||||
fprintf(stdout, "%s:\n", P_PARSE_NVC597_MTHD(mthd));
|
||||
P_DUMP_NVC597_MTHD_DATA(mthd, *p, " ");
|
||||
P_DUMP_NVC597_MTHD_DATA(stdout, mthd, *p, " ");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,6 +51,7 @@ TEMPLATE_H = Template("""\
|
||||
#include "${clheader}"
|
||||
|
||||
#include <assert.h>
|
||||
#include <stdio.h>
|
||||
#include "util/u_math.h"
|
||||
|
||||
%for mthd in mthddict:
|
||||
@@ -123,7 +124,8 @@ __${nvcl}_${mthd}(uint32_t *val_out, struct nv_${nvcl.lower()}_${mthd} st)
|
||||
%endfor
|
||||
|
||||
const char *P_PARSE_${nvcl}_MTHD(uint16_t idx);
|
||||
void P_DUMP_${nvcl}_MTHD_DATA(uint16_t idx, uint32_t data, const char *prefix);
|
||||
void P_DUMP_${nvcl}_MTHD_DATA(FILE *fp, uint16_t idx, uint32_t data,
|
||||
const char *prefix);
|
||||
""")
|
||||
|
||||
TEMPLATE_C = Template("""\
|
||||
@@ -155,7 +157,8 @@ P_PARSE_${nvcl}_MTHD(uint16_t idx)
|
||||
}
|
||||
|
||||
void
|
||||
P_DUMP_${nvcl}_MTHD_DATA(uint16_t idx, uint32_t data, const char *prefix)
|
||||
P_DUMP_${nvcl}_MTHD_DATA(FILE *fp, uint16_t idx, uint32_t data,
|
||||
const char *prefix)
|
||||
{
|
||||
uint32_t parsed;
|
||||
switch (idx) {
|
||||
@@ -181,30 +184,30 @@ P_DUMP_${nvcl}_MTHD_DATA(uint16_t idx, uint32_t data, const char *prefix)
|
||||
%else:
|
||||
parsed = (data >> ${field_start}) & ((1u << ${field_width}) - 1);
|
||||
%endif
|
||||
printf("%s.${field_name} = ", prefix);
|
||||
fprintf(fp, "%s.${field_name} = ", prefix);
|
||||
%if len(mthddict[mthd].field_defs[field_name]):
|
||||
switch (parsed) {
|
||||
%for d in mthddict[mthd].field_defs[field_name]:
|
||||
case ${nvcl}_${mthd}_${field_name}_${d}:
|
||||
printf("${d}${bs}n");
|
||||
fprintf(fp, "${d}${bs}n");
|
||||
break;
|
||||
%endfor
|
||||
default:
|
||||
printf("0x%x${bs}n", parsed);
|
||||
fprintf(fp, "0x%x${bs}n", parsed);
|
||||
break;
|
||||
}
|
||||
%else:
|
||||
%if mthddict[mthd].is_float:
|
||||
printf("%ff (0x%x)${bs}n", uif(parsed), parsed);
|
||||
fprintf(fp, "%ff (0x%x)${bs}n", uif(parsed), parsed);
|
||||
%else:
|
||||
printf("(0x%x)${bs}n", parsed);
|
||||
fprintf(fp, "(0x%x)${bs}n", parsed);
|
||||
%endif
|
||||
%endif
|
||||
break;
|
||||
%endfor
|
||||
%endfor
|
||||
default:
|
||||
printf("%s.VALUE = 0x%x${bs}n", prefix, data);
|
||||
fprintf(fp, "%s.VALUE = 0x%x${bs}n", prefix, data);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -274,34 +274,34 @@ nouveau_ws_push_dump(struct nouveau_ws_push *push, struct nouveau_ws_context *ct
|
||||
switch (subchan) {
|
||||
case 0:
|
||||
if (ctx->compute.cls >= 0xc597)
|
||||
P_DUMP_NVC597_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVC597_MTHD_DATA(stdout, mthd, value, "\t\t");
|
||||
else if (ctx->compute.cls >= 0xc397)
|
||||
P_DUMP_NVC397_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVC397_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
else if (ctx->compute.cls >= 0xb197)
|
||||
P_DUMP_NVB197_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVB197_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
else if (ctx->compute.cls >= 0xa097)
|
||||
P_DUMP_NVA097_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVA097_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
else
|
||||
P_DUMP_NV9097_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NV9097_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
break;
|
||||
case 1:
|
||||
if (ctx->compute.cls >= 0xc3c0)
|
||||
P_DUMP_NVC3C0_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVC3C0_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
else if (ctx->compute.cls >= 0xc0c0)
|
||||
P_DUMP_NVC0C0_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVC0C0_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
else
|
||||
P_DUMP_NVA0C0_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVA0C0_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
break;
|
||||
case 3:
|
||||
P_DUMP_NV902D_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NV902D_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
break;
|
||||
case 4:
|
||||
if (ctx->copy.cls >= 0xc1b5)
|
||||
P_DUMP_NVC1B5_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVC1B5_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
else if (ctx->copy.cls >= 0xa0b5)
|
||||
P_DUMP_NVA0B5_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NVA0B5_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
else
|
||||
P_DUMP_NV90B5_MTHD_DATA(mthd, value, "\t\t");
|
||||
P_DUMP_NV90B5_MTHD_DATA(stdout,mthd, value, "\t\t");
|
||||
break;
|
||||
default:
|
||||
mthd_name = "";
|
||||
|
||||
Reference in New Issue
Block a user