From: Ville Syrjälä ville.syrjala@linux.intel.com
[ Upstream commit c3fbcf60bc74b630967f291f47f0d9d0de6fcea7 ]
We use the "driver features" block for two different kinds of data: global data, and per panel data. Split the function into two parts along that line so that we can start doing the parsing in two different locations.
Reviewed-by: Jani Nikula jani.nikula@intel.com Signed-off-by: Ville Syrjälä ville.syrjala@linux.intel.com Link: https://patchwork.freedesktop.org/patch/msgid/20220510104242.6099-11-ville.s... Stable-dep-of: 607f41768a1e ("drm/i915/dsi: filter invalid backlight and CABC ports") Signed-off-by: Sasha Levin sashal@kernel.org --- drivers/gpu/drm/i915/display/intel_bios.c | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c index 91caf4523b34..5ceabc380808 100644 --- a/drivers/gpu/drm/i915/display/intel_bios.c +++ b/drivers/gpu/drm/i915/display/intel_bios.c @@ -1188,6 +1188,16 @@ parse_driver_features(struct drm_i915_private *i915) driver->lvds_config != BDB_DRIVER_FEATURE_INT_SDVO_LVDS) i915->vbt.int_lvds_support = 0; } +} + +static void +parse_panel_driver_features(struct drm_i915_private *i915) +{ + const struct bdb_driver_features *driver; + + driver = find_section(i915, BDB_DRIVER_FEATURES); + if (!driver) + return;
if (i915->vbt.version < 228) { drm_dbg_kms(&i915->drm, "DRRS State Enabled:%d\n", @@ -2965,6 +2975,7 @@ void intel_bios_init(struct drm_i915_private *i915) parse_lfp_backlight(i915); parse_sdvo_panel_data(i915); parse_driver_features(i915); + parse_panel_driver_features(i915); parse_power_conservation_features(i915); parse_edp(i915); parse_psr(i915);