Message ID | 20221103004006.24904-1-shawn.c.lee@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v3] drm/i915/pps: improve eDP power on flow | expand |
On Thu, 03 Nov 2022, Lee Shawn C <shawn.c.lee@intel.com> wrote: > After i915 dirver initialized, a panel power off cycle delay > always append before turn eDP on. If eDP display did not > power on before. With this change, power off duration might > longer than power cycle delay. So driver can save power cycle > delay to speed up driver initialization time. > > v2: fix commit messages > v3: refine panel_power_off_time default value and modify > commit messages > > Cc: Shankar Uma <uma.shankar@intel.com> > Cc: Jani Nikula <jani.nikula@linux.intel.com> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > Signed-off-by: Lee Shawn C <shawn.c.lee@intel.com> > --- > drivers/gpu/drm/i915/display/intel_pps.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_pps.c b/drivers/gpu/drm/i915/display/intel_pps.c > index 21944f5bf3a8..a394bb1c92d0 100644 > --- a/drivers/gpu/drm/i915/display/intel_pps.c > +++ b/drivers/gpu/drm/i915/display/intel_pps.c > @@ -1098,7 +1098,7 @@ bool intel_pps_have_panel_power_or_vdd(struct intel_dp *intel_dp) > > static void pps_init_timestamps(struct intel_dp *intel_dp) > { > - intel_dp->pps.panel_power_off_time = ktime_get_boottime(); > + intel_dp->pps.panel_power_off_time = 0; So this is just copy-paste from [1] where we discuss the problems with this approach, specifically module reload ignoring the power off time. Why would you post this without even mentioning the problem? BR, Jani. [1] https://gitlab.freedesktop.org/drm/intel/-/issues/7417#note_1619118 > intel_dp->pps.last_power_on = jiffies; > intel_dp->pps.last_backlight_off = jiffies; > }
On Thursday, November 3, 2022 7:00 PM, Jani Nikula <jani.nikula@linux.intel.com> wrote: >On Thu, 03 Nov 2022, Lee Shawn C <shawn.c.lee@intel.com> wrote: >> After i915 dirver initialized, a panel power off cycle delay always >> append before turn eDP on. If eDP display did not power on before. >> With this change, power off duration might longer than power cycle >> delay. So driver can save power cycle delay to speed up driver >> initialization time. >> >> v2: fix commit messages >> v3: refine panel_power_off_time default value and modify >> commit messages >> >> Cc: Shankar Uma <uma.shankar@intel.com> >> Cc: Jani Nikula <jani.nikula@linux.intel.com> >> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> >> Signed-off-by: Lee Shawn C <shawn.c.lee@intel.com> >> --- >> drivers/gpu/drm/i915/display/intel_pps.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/i915/display/intel_pps.c >> b/drivers/gpu/drm/i915/display/intel_pps.c >> index 21944f5bf3a8..a394bb1c92d0 100644 >> --- a/drivers/gpu/drm/i915/display/intel_pps.c >> +++ b/drivers/gpu/drm/i915/display/intel_pps.c >> @@ -1098,7 +1098,7 @@ bool intel_pps_have_panel_power_or_vdd(struct >> intel_dp *intel_dp) >> >> static void pps_init_timestamps(struct intel_dp *intel_dp) { >> - intel_dp->pps.panel_power_off_time = ktime_get_boottime(); >> + intel_dp->pps.panel_power_off_time = 0; > >So this is just copy-paste from [1] where we discuss the problems with this approach, specifically module reload ignoring the power off time. >Why would you post this without even mentioning the problem? > OK, we will stop commit any patch until we have proper solution. Could you please share your opinion about next step? Thanks! Best regards, Shawn > >BR, >Jani. > > >[1] https://gitlab.freedesktop.org/drm/intel/-/issues/7417#note_1619118 > >> intel_dp->pps.last_power_on = jiffies; >> intel_dp->pps.last_backlight_off = jiffies; } > >-- >Jani Nikula, Intel Open Source Graphics Center
diff --git a/drivers/gpu/drm/i915/display/intel_pps.c b/drivers/gpu/drm/i915/display/intel_pps.c index 21944f5bf3a8..a394bb1c92d0 100644 --- a/drivers/gpu/drm/i915/display/intel_pps.c +++ b/drivers/gpu/drm/i915/display/intel_pps.c @@ -1098,7 +1098,7 @@ bool intel_pps_have_panel_power_or_vdd(struct intel_dp *intel_dp) static void pps_init_timestamps(struct intel_dp *intel_dp) { - intel_dp->pps.panel_power_off_time = ktime_get_boottime(); + intel_dp->pps.panel_power_off_time = 0; intel_dp->pps.last_power_on = jiffies; intel_dp->pps.last_backlight_off = jiffies; }
After i915 dirver initialized, a panel power off cycle delay always append before turn eDP on. If eDP display did not power on before. With this change, power off duration might longer than power cycle delay. So driver can save power cycle delay to speed up driver initialization time. v2: fix commit messages v3: refine panel_power_off_time default value and modify commit messages Cc: Shankar Uma <uma.shankar@intel.com> Cc: Jani Nikula <jani.nikula@linux.intel.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Lee Shawn C <shawn.c.lee@intel.com> --- drivers/gpu/drm/i915/display/intel_pps.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)