Each value present in ICL's VS/PE-O table is stored on u32. In order to match values' size this causes icl_ddi_buf_trans to increase it's size.
Nevertheless, the actual value from each ICL's VS/PE-O table is fully encoded in the lowest byte. Extract the lowest byte by casting to u8 and using it as deparsed value. This way there is no need to inflate default tables. Signed-off-by: Michał Grzelak <[email protected]> --- drivers/gpu/drm/i915/display/intel_bios.c | 10 +++++----- drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c index 5e1000a72cf74..9138ec64b6b1c 100644 --- a/drivers/gpu/drm/i915/display/intel_bios.c +++ b/drivers/gpu/drm/i915/display/intel_bios.c @@ -2202,11 +2202,11 @@ parse_vswing_preemph_icl(union intel_ddi_buf_trans_entry **bufs_mtrx, vals = &tables[offset]; entry = &bufs_mtrx[idx][row]; - entry->icl.dw2_swing_sel = vals[0]; - entry->icl.dw7_n_scalar = vals[1]; - entry->icl.dw4_cursor_coeff = vals[2]; - entry->icl.dw4_post_cursor_2 = vals[3]; - entry->icl.dw4_post_cursor_1 = vals[4]; + entry->icl.dw2_swing_sel = (u8) vals[0]; + entry->icl.dw7_n_scalar = (u8) vals[1]; + entry->icl.dw4_cursor_coeff = (u8) vals[2]; + entry->icl.dw4_post_cursor_2 = (u8) vals[3]; + entry->icl.dw4_post_cursor_1 = (u8) vals[4]; offset += block->num_columns; } diff --git a/drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h b/drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h index bfb6de45a94e2..a8c998fa339e6 100644 --- a/drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h +++ b/drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h @@ -25,11 +25,11 @@ struct bxt_ddi_buf_trans { }; struct icl_ddi_buf_trans { - u32 dw2_swing_sel; - u32 dw7_n_scalar; - u32 dw4_cursor_coeff; - u32 dw4_post_cursor_2; - u32 dw4_post_cursor_1; + u8 dw2_swing_sel; + u8 dw7_n_scalar; + u8 dw4_cursor_coeff; + u8 dw4_post_cursor_2; + u8 dw4_post_cursor_1; }; struct icl_mg_phy_ddi_buf_trans { -- 2.45.2
