> Subject: [PATCH v3 03/31] drm/i915/bios: log unsupported VS/PE-O parsing
>
> Search for VBT #57. Check for failure since pre-ICL GOPs do not contain the
> block. Check also if VBT version is appropriately up-to-date.
>
> Issue a debug message when port requests to override VS/PE and parsing VBT
> #57 for the platform has not yet been implemented.
>
> Signed-off-by: Michał Grzelak <[email protected]>
> ---
> drivers/gpu/drm/i915/display/intel_bios.c | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_bios.c
> b/drivers/gpu/drm/i915/display/intel_bios.c
> index 5700de438fdfd..3f9e4d31c7375 100644
> --- a/drivers/gpu/drm/i915/display/intel_bios.c
> +++ b/drivers/gpu/drm/i915/display/intel_bios.c
> @@ -2185,6 +2185,23 @@ parse_compression_parameters(struct intel_display
> *display)
> }
> }
>
> +static void
> +parse_vswing_preemph_override(struct intel_display *display) {
> + const struct bdb_vswing_preemph *block;
> +
> + if (display->vbt.version < 218)
> + return;
> +
> + block = bdb_find_section(display, BDB_VSWING_PREEMPH);
> +
> + /* pre-ICL GOP don't have VBT #57 */
If we already know pre ICL does have VBT #57 for sure why even try the find
section for check vbt versions lets just return early after display_ver() check
, which is done even before the vbt.version check .
Regards,
Suraj Kandpal
> + if (!block)
> + return;
> +
> + drm_dbg_kms(display->drm, "VS/PE-O parsing not yet supported\n"); }
> +
> static u8 translate_iboost(struct intel_display *display, u8 val) {
> static const u8 mapping[] = { 1, 3, 7 }; /* See VBT spec */ @@ -3276,6
> +3293,7 @@ void intel_bios_init(struct intel_display *display)
>
> /* Depends on child device list */
> parse_compression_parameters(display);
> + parse_vswing_preemph_override(display);
>
> out:
> if (!vbt) {
> --
> 2.45.2