Store all VS/PE-O relevant metadata inside anonymous struct in intel_vbt_data. This includes number of rows, number of tables and allocated memory for buffers' matrix.
Name the field as vspeo: an abomination from VS/PE-O, which in turn could be expanded to VSwing / Pre-Emphasis Override. Signed-off-by: Michał Grzelak <[email protected]> --- drivers/gpu/drm/i915/display/intel_bios.c | 20 +++++++++---------- .../gpu/drm/i915/display/intel_display_core.h | 8 +++++--- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c index 064eb4fda3f3a..6ac8dd16ea7b8 100644 --- a/drivers/gpu/drm/i915/display/intel_bios.c +++ b/drivers/gpu/drm/i915/display/intel_bios.c @@ -2211,9 +2211,9 @@ parse_vswing_preemph_override(struct intel_display *display) drm_dbg_kms(display->drm, "VS/PE-O parsing not yet supported\n"); - display->vbt.bufs_mtrx = bufs_mtrx; - display->vbt.num_tables = block->num_tables; - display->vbt.num_rows = num_rows; + display->vbt.vspeo.bufs_mtrx = bufs_mtrx; + display->vbt.vspeo.num_tables = block->num_tables; + display->vbt.vspeo.num_rows = num_rows; } static u8 translate_iboost(struct intel_display *display, u8 val) @@ -3013,9 +3013,9 @@ init_vbt_defaults(struct intel_display *display) display->vbt.lvds_ssc_freq); /* Vswing / Preemphasis Override */ - display->vbt.bufs_mtrx = NULL; - display->vbt.num_tables = 0; - display->vbt.num_rows = 0; + display->vbt.vspeo.bufs_mtrx = NULL; + display->vbt.vspeo.num_tables = 0; + display->vbt.vspeo.num_rows = 0; } /* Common defaults which may be overridden by VBT. */ @@ -3398,11 +3398,11 @@ void intel_bios_driver_remove(struct intel_display *display) kfree(entry); } - if (display->vbt.bufs_mtrx) { - for (int idx = 0; idx < display->vbt.num_tables; idx++) - kfree(display->vbt.bufs_mtrx[idx]); + if (display->vbt.vspeo.bufs_mtrx) { + for (int idx = 0; idx < display->vbt.vspeo.num_tables; idx++) + kfree(display->vbt.vspeo.bufs_mtrx[idx]); - kfree(display->vbt.bufs_mtrx); + kfree(display->vbt.vspeo.bufs_mtrx); } } diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h index a91397ecfe017..19ffe62d642c6 100644 --- a/drivers/gpu/drm/i915/display/intel_display_core.h +++ b/drivers/gpu/drm/i915/display/intel_display_core.h @@ -242,9 +242,11 @@ struct intel_vbt_data { struct list_head display_devices; struct list_head bdb_blocks; - union intel_ddi_buf_trans_entry **bufs_mtrx; - int num_tables; - int num_rows; + struct { + union intel_ddi_buf_trans_entry **bufs_mtrx; + int num_tables; + int num_rows; + } vspeo; struct sdvo_device_mapping { u8 initialized; -- 2.45.2
