Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b1cb1bd2 authored by Jani Nikula's avatar Jani Nikula
Browse files

drm/i915/dsi: update reset and power sequences in panel prepare/unprepare hooks



Based on the documentation alone, it's anyone's guess when exactly we
should be running these sequences. Add power on/off sequences where they
feel logical and update assert/deassert reset. The drm panel hooks don't
currently offer us more granularity anyway.

v2: update assert/deassert reset as well (Ville)

Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1543320494df953fa073e136248238eaa1eed059.1474286487.git.jani.nikula@intel.com
parent 044aad65
Loading
Loading
Loading
Loading
+4 −1
Original line number Original line Diff line number Diff line
@@ -459,6 +459,8 @@ static void generic_exec_sequence(struct drm_panel *panel, enum mipi_seq seq_id)
static int vbt_panel_prepare(struct drm_panel *panel)
static int vbt_panel_prepare(struct drm_panel *panel)
{
{
	generic_exec_sequence(panel, MIPI_SEQ_ASSERT_RESET);
	generic_exec_sequence(panel, MIPI_SEQ_ASSERT_RESET);
	generic_exec_sequence(panel, MIPI_SEQ_POWER_ON);
	generic_exec_sequence(panel, MIPI_SEQ_DEASSERT_RESET);
	generic_exec_sequence(panel, MIPI_SEQ_INIT_OTP);
	generic_exec_sequence(panel, MIPI_SEQ_INIT_OTP);


	return 0;
	return 0;
@@ -466,7 +468,8 @@ static int vbt_panel_prepare(struct drm_panel *panel)


static int vbt_panel_unprepare(struct drm_panel *panel)
static int vbt_panel_unprepare(struct drm_panel *panel)
{
{
	generic_exec_sequence(panel, MIPI_SEQ_DEASSERT_RESET);
	generic_exec_sequence(panel, MIPI_SEQ_ASSERT_RESET);
	generic_exec_sequence(panel, MIPI_SEQ_POWER_OFF);


	return 0;
	return 0;
}
}