Selaa lähdekoodia

intel: aubinator: print boolean fields to true with colors

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Sirisha Gandikota<sirisha.gandikota@intel.com>
tags/17.0-branchpoint
Lionel Landwerlin 8 vuotta sitten
vanhempi
commit
c8806eeefc
3 muutettua tiedostoa jossa 17 lisäystä ja 6 poistoa
  1. 4
    2
      src/intel/tools/aubinator.c
  2. 9
    3
      src/intel/tools/decoder.c
  3. 4
    1
      src/intel/tools/decoder.h

+ 4
- 2
src/intel/tools/aubinator.c Näytä tiedosto

@@ -139,7 +139,8 @@ decode_structure(struct gen_spec *spec, struct gen_group *strct,
else
offset = 0;

gen_field_iterator_init(&iter, strct, p);
gen_field_iterator_init(&iter, strct, p,
option_color == COLOR_ALWAYS);
while (gen_field_iterator_next(&iter)) {
idx = 0;
print_dword_val(&iter, offset, &dword_num);
@@ -755,7 +756,8 @@ parse_commands(struct gen_spec *spec, uint32_t *cmds, int size, int engine)
struct gen_field_iterator iter;
char *token = NULL;
int idx = 0, dword_num = 0;
gen_field_iterator_init(&iter, inst, p);
gen_field_iterator_init(&iter, inst, p,
option_color == COLOR_ALWAYS);
while (gen_field_iterator_next(&iter)) {
idx = 0;
print_dword_val(&iter, offset, &dword_num);

+ 9
- 3
src/intel/tools/decoder.c Näytä tiedosto

@@ -594,11 +594,14 @@ gen_group_get_length(struct gen_group *group, const uint32_t *p)

void
gen_field_iterator_init(struct gen_field_iterator *iter,
struct gen_group *group, const uint32_t *p)
struct gen_group *group,
const uint32_t *p,
bool print_colors)
{
iter->group = group;
iter->p = p;
iter->i = 0;
iter->print_colors = print_colors;
}

bool
@@ -632,10 +635,13 @@ gen_field_iterator_next(struct gen_field_iterator *iter)
snprintf(iter->value, sizeof(iter->value),
"%"PRIu64, field(v.qw, f->start, f->end));
break;
case GEN_TYPE_BOOL:
case GEN_TYPE_BOOL: {
const char *true_string =
iter->print_colors ? "\e[0;35mtrue\e[0m" : "true";
snprintf(iter->value, sizeof(iter->value),
"%s", field(v.qw, f->start, f->end) ? "true" : "false");
"%s", field(v.qw, f->start, f->end) ? true_string : "false");
break;
}
case GEN_TYPE_FLOAT:
snprintf(iter->value, sizeof(iter->value), "%f", v.f);
break;

+ 4
- 1
src/intel/tools/decoder.h Näytä tiedosto

@@ -55,6 +55,7 @@ struct gen_field_iterator {
char value[128];
const uint32_t *p;
int i;
bool print_colors;
};

struct gen_group {
@@ -101,7 +102,9 @@ struct gen_field {
};

void gen_field_iterator_init(struct gen_field_iterator *iter,
struct gen_group *group, const uint32_t *p);
struct gen_group *group,
const uint32_t *p,
bool print_colors);

bool gen_field_iterator_next(struct gen_field_iterator *iter);


Loading…
Peruuta
Tallenna