From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [Intel-gfx] [PATCH 1/2] drm/i915: check VBT for supported backlight type Date: Wed, 9 Apr 2014 14:44:59 +0300 Message-ID: <20140409114459.GI18465@intel.com> References: <1397039735-2561-1-git-send-email-jani.nikula@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Content-Disposition: inline In-Reply-To: <1397039735-2561-1-git-send-email-jani.nikula@intel.com> Sender: stable-owner@vger.kernel.org To: Jani Nikula Cc: intel-gfx@lists.freedesktop.org, aaron.lu@intel.com, EGriffith92@gmail.com, stable@vger.kernel.org, kent.baxley@canonical.com List-Id: intel-gfx@lists.freedesktop.org On Wed, Apr 09, 2014 at 01:35:34PM +0300, Jani Nikula wrote: > The only supported types are none and PWM. Other values are obsolete = or > reserved, don't add them. >=20 > Signed-off-by: Jani Nikula > --- > drivers/gpu/drm/i915/i915_drv.h | 1 + > drivers/gpu/drm/i915/intel_bios.c | 10 ++++++++++ > drivers/gpu/drm/i915/intel_bios.h | 3 +++ > 3 files changed, 14 insertions(+) >=20 > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i= 915_drv.h > index 55addaaa8222..03f4c866bf3e 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -1154,6 +1154,7 @@ struct intel_vbt_data { > struct edp_power_seq edp_pps; > =20 > struct { > + bool present; > u16 pwm_freq_hz; > bool active_low_pwm; Could pack the bools next to each other. Otherwise the series looks good. Obviously I can't tell whether the VBT can be trusted on this, but at least the code matches the spec I have. So for the series: Reviewed-by: Ville Syrj=E4l=E4 > } backlight; > diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915= /intel_bios.c > index 9b986775c4b0..862ca04f7a44 100644 > --- a/drivers/gpu/drm/i915/intel_bios.c > +++ b/drivers/gpu/drm/i915/intel_bios.c > @@ -309,6 +309,9 @@ parse_lfp_backlight(struct drm_i915_private *dev_= priv, struct bdb_header *bdb) > const struct bdb_lfp_backlight_data *backlight_data; > const struct bdb_lfp_backlight_data_entry *entry; > =20 > + /* Err to enabling backlight if no backlight block. */ > + dev_priv->vbt.backlight.present =3D true; > + > backlight_data =3D find_section(bdb, BDB_LVDS_BACKLIGHT); > if (!backlight_data) > return; > @@ -321,6 +324,13 @@ parse_lfp_backlight(struct drm_i915_private *dev= _priv, struct bdb_header *bdb) > =20 > entry =3D &backlight_data->data[panel_type]; > =20 > + dev_priv->vbt.backlight.present =3D entry->type =3D=3D BDB_BACKLIGH= T_TYPE_PWM; > + if (!dev_priv->vbt.backlight.present) { > + DRM_DEBUG_KMS("PWM backlight not present in VBT (type %u)\n", > + entry->type); > + return; > + } > + > dev_priv->vbt.backlight.pwm_freq_hz =3D entry->pwm_freq_hz; > dev_priv->vbt.backlight.active_low_pwm =3D entry->active_low_pwm; > DRM_DEBUG_KMS("VBT backlight PWM modulation frequency %u Hz, " > diff --git a/drivers/gpu/drm/i915/intel_bios.h b/drivers/gpu/drm/i915= /intel_bios.h > index d02e5f93c362..036a79922391 100644 > --- a/drivers/gpu/drm/i915/intel_bios.h > +++ b/drivers/gpu/drm/i915/intel_bios.h > @@ -389,6 +389,9 @@ struct bdb_lvds_lfp_data { > struct bdb_lvds_lfp_data_entry data[16]; > } __packed; > =20 > +#define BDB_BACKLIGHT_TYPE_NONE 0 > +#define BDB_BACKLIGHT_TYPE_PWM 2 > + > struct bdb_lfp_backlight_data_entry { > u8 type:2; > u8 active_low_pwm:1; > --=20 > 1.7.9.5 >=20 > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx --=20 Ville Syrj=E4l=E4 Intel OTC