HI, > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Jesse > Barnes > Sent: perjantai 15. marraskuuta 2019 2.05 > To: Roper, Matthew D <matthew.d.roper@xxxxxxxxx> > Cc: Nikula, Jani <jani.nikula@xxxxxxxxx>; intel-gfx@xxxxxxxxxxxxxxxxxxxxx > Subject: Re: [PATCH v4 1/2] drm/i915/vbt: Parse panel options > separately from timing data > > LGTM. > > Reviewed-by: Jesse Barnes <jsbarnes@xxxxxxxxxx> Thanks Jesse 😉 > > On Thu, Nov 14, 2019 at 9:07 AM Matt Roper <matthew.d.roper@xxxxxxxxx> > wrote: > > > > Newer VBT versions will add an alternate way to read panel DTD > > information, so let's split parsing of the general panel information > > from the timing data in preparation. > > > > Cc: Jani Nikula <jani.nikula@xxxxxxxxx> > > Signed-off-by: Matt Roper <matthew.d.roper@xxxxxxxxx> > > --- > > drivers/gpu/drm/i915/display/intel_bios.c | 27 > > +++++++++++++++-------- > > 1 file changed, 18 insertions(+), 9 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_bios.c > > b/drivers/gpu/drm/i915/display/intel_bios.c > > index 6d7b1a83cb07..d13ce0b7db8b 100644 > > --- a/drivers/gpu/drm/i915/display/intel_bios.c > > +++ b/drivers/gpu/drm/i915/display/intel_bios.c > > @@ -208,17 +208,12 @@ get_lvds_fp_timing(const struct bdb_header *bdb, > > return (const struct lvds_fp_timing *)((const u8 *)bdb + ofs); > > } > > > > -/* Try to find integrated panel data */ > > +/* Parse general panel options */ > > static void > > -parse_lfp_panel_data(struct drm_i915_private *dev_priv, > > - const struct bdb_header *bdb) > > +parse_panel_options(struct drm_i915_private *dev_priv, > > + const struct bdb_header *bdb) > > { > > const struct bdb_lvds_options *lvds_options; > > - const struct bdb_lvds_lfp_data *lvds_lfp_data; > > - const struct bdb_lvds_lfp_data_ptrs *lvds_lfp_data_ptrs; > > - const struct lvds_dvo_timing *panel_dvo_timing; > > - const struct lvds_fp_timing *fp_timing; > > - struct drm_display_mode *panel_fixed_mode; > > int panel_type; > > int drrs_mode; > > int ret; > > @@ -267,6 +262,19 @@ parse_lfp_panel_data(struct drm_i915_private > *dev_priv, > > DRM_DEBUG_KMS("DRRS not supported (VBT input)\n"); > > break; > > } > > +} > > + > > +/* Try to find integrated panel timing data */ static void > > +parse_lfp_panel_dtd(struct drm_i915_private *dev_priv, > > + const struct bdb_header *bdb) { > > + const struct bdb_lvds_lfp_data *lvds_lfp_data; > > + const struct bdb_lvds_lfp_data_ptrs *lvds_lfp_data_ptrs; > > + const struct lvds_dvo_timing *panel_dvo_timing; > > + const struct lvds_fp_timing *fp_timing; > > + struct drm_display_mode *panel_fixed_mode; > > + int panel_type = dev_priv->vbt.panel_type; > > > > lvds_lfp_data = find_section(bdb, BDB_LVDS_LFP_DATA); > > if (!lvds_lfp_data) > > @@ -1868,7 +1876,8 @@ void intel_bios_init(struct drm_i915_private > *dev_priv) > > /* Grab useful general definitions */ > > parse_general_features(dev_priv, bdb); > > parse_general_definitions(dev_priv, bdb); > > - parse_lfp_panel_data(dev_priv, bdb); > > + parse_panel_options(dev_priv, bdb); > > + parse_lfp_panel_dtd(dev_priv, bdb); > > parse_lfp_backlight(dev_priv, bdb); > > parse_sdvo_panel_data(dev_priv, bdb); > > parse_driver_features(dev_priv, bdb); > > -- > > 2.21.0 > > > > _______________________________________________ > > Intel-gfx mailing list > > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx