[igt-dev] [PATCH i-g-t 1/2] tools/vbt_decode: Fix VBT parsing for the PSR section

Dhinakaran Pandiyan
2019-07-18T00:45:52Z

A single 32-bit PSR2 training pattern field follows the sixteen element
array of PSR table entries as per VBT spec. But, we incorrectly define
this PSR2 field for each of PSR table entries. The result of this is
that the PSR1 training pattern duration for any panel_type != 0 will be
parsed incorrectly.

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
---
tools/intel_vbt_defs.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/intel_vbt_defs.h b/tools/intel_vbt_defs.h
index 89ef14ca..c903cda3 100644
--- a/tools/intel_vbt_defs.h
+++ b/tools/intel_vbt_defs.h
@@ -475,13 +475,13 @@ struct psr_table {
/* TP wake up time in multiple of 100 */
u16 tp1_wakeup_time;
u16 tp2_tp3_wakeup_time;
-
- /* PSR2 TP2/TP3 wakeup time for 16 panels */
- u32 psr2_tp2_tp3_wakeup_time;
} __packed;

struct bdb_psr {
struct psr_table psr_table[16];
+
+ /* PSR2 TP2/TP3 wakeup time for 16 panels */
+ u32 psr2_tp2_tp3_wakeup_time;
} __packed;

/*
--
2.17.1