Commit 790b45f1 authored by Ville Syrjälä's avatar Ville Syrjälä
Browse files

drm/i915/bios: Parse the seamless DRRS min refresh rate



Extract the seamless DRRS min refresh rate from the VBT.

v2: Do a version check

Reviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220504150440.13748-9-ville.syrjala@linux.intel.com
parent cc589f2d
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -761,6 +761,7 @@ parse_lfp_data(struct drm_i915_private *i915)
	const struct bdb_lvds_lfp_data *data;
	const struct bdb_lvds_lfp_data_tail *tail;
	const struct bdb_lvds_lfp_data_ptrs *ptrs;
	int panel_type = i915->vbt.panel_type;

	ptrs = find_section(i915, BDB_LVDS_LFP_DATA_PTRS);
	if (!ptrs)
@@ -777,7 +778,13 @@ parse_lfp_data(struct drm_i915_private *i915)
	if (!tail)
		return;

	(void)tail;
	if (i915->vbt.version >= 188) {
		i915->vbt.seamless_drrs_min_refresh_rate =
			tail->seamless_drrs_min_refresh_rate[panel_type];
		drm_dbg_kms(&i915->drm,
			    "Seamless DRRS min refresh rate: %d Hz\n",
			    i915->vbt.seamless_drrs_min_refresh_rate);
	}
}

static void
+1 −0
Original line number Diff line number Diff line
@@ -326,6 +326,7 @@ struct intel_vbt_data {
	bool override_afc_startup;
	u8 override_afc_startup_val;

	u8 seamless_drrs_min_refresh_rate;
	enum drrs_type drrs_type;

	struct {