Re: [igt-dev] [PATCH i-g-t 2/2] tooks/vbt_decode: Print PSR2 training pattern durations.

Ville Syrjälä
2019-07-18T11:35:49Z

On Wed, Jul 17, 2019 at 05:43:31PM -0700, Dhinakaran Pandiyan wrote:
> There is a new field for PSR2 training pattern duration in VBT versions
> >= 226, decode that.
>
> Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> ---
> tools/intel_vbt_decode.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
> index 38eccc48..4004762c 100644
> --- a/tools/intel_vbt_decode.c
> +++ b/tools/intel_vbt_decode.c
> @@ -944,11 +944,13 @@ static void dump_psr(struct context *context,
> {
> const struct bdb_psr *psr_block = block->data;
> int i;
> + int psr2_tp_time;

uint32_t

>
> /* The same block ID was used for something else before? */
> if (context->bdb->version < 165)
> return;
>
> + psr2_tp_time = psr_block->psr2_tp2_tp3_wakeup_time;
> for (i = 0; i < 16; i++) {
> const struct psr_table *psr = &psr_block->psr_table[i];
>
> @@ -987,6 +989,15 @@ static void dump_psr(struct context *context,
> printf("\t\tTP2/TP3 wakeup time: %d usec (0x%x)\n",
> psr->tp2_tp3_wakeup_time * 100,
> psr->tp2_tp3_wakeup_time);
> +
> + if (context->bdb->version >= 226) {
> + int index;
> + static const int psr2_tp_times[] = {500, 100, 2500, 5};

Everthing fits into uint16_t.

Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Oh, and the psr1 parsing doesn't seem to be following this silly
new style of putting the hw register value directly into the vbt.
Would be nice to fix that too. Actually, since the spec is a mess
and it's not 100% clear which VBTs might follow which style maybe
we should in fact decode both ways?

> +
> + index = (psr2_tp_time >> (i * 2)) & 0x3;
> + printf("\t\tPSR2 TP2/TP3 wakeup time: %d usec (0x%x)\n",
> + psr2_tp_times[index], index);
> + }
> }
> }
>
> --
> 2.17.1
>
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev

--
Ville Syrjälä
Intel