Commit df38e655 authored by Shobhit Kumar's avatar Shobhit Kumar Committed by Daniel Vetter

drm/i915: MIPI PPS delays added

Added as generic parameters which will be initialized in the panel
driver and are specific to panels.

Backlight delays have also kept as placeholders and will be used used
once we have MIPI backlight enabling support
Signed-off-by: default avatarShobhit Kumar <shobhit.kumar@intel.com>
Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent cf4dbd2e
...@@ -185,6 +185,8 @@ static void intel_dsi_pre_enable(struct intel_encoder *encoder) ...@@ -185,6 +185,8 @@ static void intel_dsi_pre_enable(struct intel_encoder *encoder)
/* put device in ready state */ /* put device in ready state */
intel_dsi_device_ready(encoder); intel_dsi_device_ready(encoder);
msleep(intel_dsi->panel_on_delay);
if (intel_dsi->dev.dev_ops->panel_reset) if (intel_dsi->dev.dev_ops->panel_reset)
intel_dsi->dev.dev_ops->panel_reset(&intel_dsi->dev); intel_dsi->dev.dev_ops->panel_reset(&intel_dsi->dev);
...@@ -301,6 +303,9 @@ static void intel_dsi_post_disable(struct intel_encoder *encoder) ...@@ -301,6 +303,9 @@ static void intel_dsi_post_disable(struct intel_encoder *encoder)
if (intel_dsi->dev.dev_ops->disable_panel_power) if (intel_dsi->dev.dev_ops->disable_panel_power)
intel_dsi->dev.dev_ops->disable_panel_power(&intel_dsi->dev); intel_dsi->dev.dev_ops->disable_panel_power(&intel_dsi->dev);
msleep(intel_dsi->panel_off_delay);
msleep(intel_dsi->panel_pwr_cycle_delay);
} }
static bool intel_dsi_get_hw_state(struct intel_encoder *encoder, static bool intel_dsi_get_hw_state(struct intel_encoder *encoder,
......
...@@ -116,6 +116,13 @@ struct intel_dsi { ...@@ -116,6 +116,13 @@ struct intel_dsi {
u16 clk_hs_to_lp_count; u16 clk_hs_to_lp_count;
u16 init_count; u16 init_count;
/* all delays in ms */
u16 backlight_off_delay;
u16 backlight_on_delay;
u16 panel_on_delay;
u16 panel_off_delay;
u16 panel_pwr_cycle_delay;
}; };
static inline struct intel_dsi *enc_to_intel_dsi(struct drm_encoder *encoder) static inline struct intel_dsi *enc_to_intel_dsi(struct drm_encoder *encoder)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment