mirror of https://gitee.com/openkylin/linux.git
Revert "drm/i915: Parsing LFP brightness control from VBT"
This reverts commit 371abae844
.
This data seems unreliable and causing many issues and blocking other
teams and feature implementation. Safest way is to revert that for now.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88081
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88039
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=87671
Cc: Vandana Kannan <vandana.kannan@intel.com>
Cc: Deepak M <m.deepak@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Ben Widawsky <ben@bwidawsk.net>
Cc: Kristian Høgsberg <hoegsberg@gmail.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
1816f92363
commit
9025452366
|
@ -1408,7 +1408,6 @@ struct intel_vbt_data {
|
||||||
bool present;
|
bool present;
|
||||||
bool active_low_pwm;
|
bool active_low_pwm;
|
||||||
u8 min_brightness; /* min_brightness/255 of max */
|
u8 min_brightness; /* min_brightness/255 of max */
|
||||||
u8 controller; /* brightness controller number */
|
|
||||||
} backlight;
|
} backlight;
|
||||||
|
|
||||||
/* MIPI DSI */
|
/* MIPI DSI */
|
||||||
|
|
|
@ -314,7 +314,6 @@ 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 *backlight_data;
|
||||||
const struct bdb_lfp_backlight_data_entry *entry;
|
const struct bdb_lfp_backlight_data_entry *entry;
|
||||||
const struct bdb_lfp_backlight_control_data *bl_ctrl_data;
|
|
||||||
|
|
||||||
backlight_data = find_section(bdb, BDB_LVDS_BACKLIGHT);
|
backlight_data = find_section(bdb, BDB_LVDS_BACKLIGHT);
|
||||||
if (!backlight_data)
|
if (!backlight_data)
|
||||||
|
@ -327,7 +326,6 @@ parse_lfp_backlight(struct drm_i915_private *dev_priv, struct bdb_header *bdb)
|
||||||
}
|
}
|
||||||
|
|
||||||
entry = &backlight_data->data[panel_type];
|
entry = &backlight_data->data[panel_type];
|
||||||
bl_ctrl_data = &backlight_data->blc_ctl[panel_type];
|
|
||||||
|
|
||||||
dev_priv->vbt.backlight.present = entry->type == BDB_BACKLIGHT_TYPE_PWM;
|
dev_priv->vbt.backlight.present = entry->type == BDB_BACKLIGHT_TYPE_PWM;
|
||||||
if (!dev_priv->vbt.backlight.present) {
|
if (!dev_priv->vbt.backlight.present) {
|
||||||
|
@ -339,30 +337,12 @@ parse_lfp_backlight(struct drm_i915_private *dev_priv, struct bdb_header *bdb)
|
||||||
dev_priv->vbt.backlight.pwm_freq_hz = entry->pwm_freq_hz;
|
dev_priv->vbt.backlight.pwm_freq_hz = entry->pwm_freq_hz;
|
||||||
dev_priv->vbt.backlight.active_low_pwm = entry->active_low_pwm;
|
dev_priv->vbt.backlight.active_low_pwm = entry->active_low_pwm;
|
||||||
dev_priv->vbt.backlight.min_brightness = entry->min_brightness;
|
dev_priv->vbt.backlight.min_brightness = entry->min_brightness;
|
||||||
|
|
||||||
dev_priv->vbt.backlight.controller = 0;
|
|
||||||
if (bdb->version >= 191) {
|
|
||||||
dev_priv->vbt.backlight.present =
|
|
||||||
bl_ctrl_data->pin == BLC_CONTROL_PIN_DDI;
|
|
||||||
if (!dev_priv->vbt.backlight.present) {
|
|
||||||
DRM_DEBUG_KMS("BL control pin is not DDI (pin %u)\n",
|
|
||||||
bl_ctrl_data->pin);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (bl_ctrl_data->controller == 1)
|
|
||||||
dev_priv->vbt.backlight.controller =
|
|
||||||
bl_ctrl_data->controller;
|
|
||||||
}
|
|
||||||
|
|
||||||
DRM_DEBUG_KMS("VBT backlight PWM modulation frequency %u Hz, "
|
DRM_DEBUG_KMS("VBT backlight PWM modulation frequency %u Hz, "
|
||||||
"active %s, min brightness %u, level %u\n",
|
"active %s, min brightness %u, level %u\n",
|
||||||
dev_priv->vbt.backlight.pwm_freq_hz,
|
dev_priv->vbt.backlight.pwm_freq_hz,
|
||||||
dev_priv->vbt.backlight.active_low_pwm ? "low" : "high",
|
dev_priv->vbt.backlight.active_low_pwm ? "low" : "high",
|
||||||
dev_priv->vbt.backlight.min_brightness,
|
dev_priv->vbt.backlight.min_brightness,
|
||||||
backlight_data->level[panel_type]);
|
backlight_data->level[panel_type]);
|
||||||
|
|
||||||
DRM_DEBUG_KMS("VBT BL controller %u\n",
|
|
||||||
dev_priv->vbt.backlight.controller);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Try to find sdvo panel data */
|
/* Try to find sdvo panel data */
|
||||||
|
|
|
@ -402,21 +402,10 @@ struct bdb_lfp_backlight_data_entry {
|
||||||
u8 obsolete3;
|
u8 obsolete3;
|
||||||
} __packed;
|
} __packed;
|
||||||
|
|
||||||
#define BLC_CONTROL_PIN_PMIC 0
|
|
||||||
#define BLC_CONTROL_PIN_LPSS_PWM 1
|
|
||||||
#define BLC_CONTROL_PIN_DDI 2
|
|
||||||
#define BLC_CONTROL_PIN_CABC 3
|
|
||||||
|
|
||||||
struct bdb_lfp_backlight_control_data {
|
|
||||||
u8 controller:4;
|
|
||||||
u8 pin:4;
|
|
||||||
} __packed;
|
|
||||||
|
|
||||||
struct bdb_lfp_backlight_data {
|
struct bdb_lfp_backlight_data {
|
||||||
u8 entry_size;
|
u8 entry_size;
|
||||||
struct bdb_lfp_backlight_data_entry data[16];
|
struct bdb_lfp_backlight_data_entry data[16];
|
||||||
u8 level[16];
|
u8 level[16];
|
||||||
struct bdb_lfp_backlight_control_data blc_ctl[16];
|
|
||||||
} __packed;
|
} __packed;
|
||||||
|
|
||||||
struct aimdb_header {
|
struct aimdb_header {
|
||||||
|
|
Loading…
Reference in New Issue