* [PATCH 0/3] drm/i915: Fuzzy clock check for port_clock
@ 2013-09-03 14:32 ville.syrjala
2013-09-03 14:32 ` [PATCH 1/3] drm/i915: Make intel_fuzzy_clock_check() take in arbitrary clocks ville.syrjala
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: ville.syrjala @ 2013-09-03 14:32 UTC (permalink / raw)
To: intel-gfx
As requested by Daniel. Totally untested as of now.
^ permalink raw reply [flat|nested] 5+ messages in thread* [PATCH 1/3] drm/i915: Make intel_fuzzy_clock_check() take in arbitrary clocks 2013-09-03 14:32 [PATCH 0/3] drm/i915: Fuzzy clock check for port_clock ville.syrjala @ 2013-09-03 14:32 ` ville.syrjala 2013-09-03 14:32 ` [PATCH 2/3] drm/i915: Add PIPE_CONF_CHECK_CLOCK_FUZZY() ville.syrjala 2013-09-03 14:32 ` [PATCH 3/3] drm/i915: Add fuzzy clock check for port_clock ville.syrjala 2 siblings, 0 replies; 5+ messages in thread From: ville.syrjala @ 2013-09-03 14:32 UTC (permalink / raw) To: intel-gfx From: Ville Syrjälä <ville.syrjala@linux.intel.com> We want to do fuzzy clock checks for other things besides adjusted_mode.clock, so just pass two two clocks to compare to intel_fuzzy_clock_check(). Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/intel_display.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 3bd9a72..1fea189 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -8545,13 +8545,9 @@ intel_modeset_update_state(struct drm_device *dev, unsigned prepare_pipes) } -static bool intel_fuzzy_clock_check(struct intel_crtc_config *cur, - struct intel_crtc_config *new) +static bool intel_fuzzy_clock_check(int clock1, int clock2) { - int clock1, clock2, diff; - - clock1 = cur->adjusted_mode.clock; - clock2 = new->adjusted_mode.clock; + int diff; if (clock1 == clock2) return true; @@ -8673,7 +8669,8 @@ intel_pipe_config_compare(struct drm_device *dev, #undef PIPE_CONF_QUIRK if (!IS_HASWELL(dev)) { - if (!intel_fuzzy_clock_check(current_config, pipe_config)) { + if (!intel_fuzzy_clock_check(current_config->adjusted_mode.clock, + pipe_config->adjusted_mode.clock)) { DRM_ERROR("mismatch in clock (expected %d, found %d)\n", current_config->adjusted_mode.clock, pipe_config->adjusted_mode.clock); -- 1.8.1.5 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/3] drm/i915: Add PIPE_CONF_CHECK_CLOCK_FUZZY() 2013-09-03 14:32 [PATCH 0/3] drm/i915: Fuzzy clock check for port_clock ville.syrjala 2013-09-03 14:32 ` [PATCH 1/3] drm/i915: Make intel_fuzzy_clock_check() take in arbitrary clocks ville.syrjala @ 2013-09-03 14:32 ` ville.syrjala 2013-09-04 9:11 ` Jani Nikula 2013-09-03 14:32 ` [PATCH 3/3] drm/i915: Add fuzzy clock check for port_clock ville.syrjala 2 siblings, 1 reply; 5+ messages in thread From: ville.syrjala @ 2013-09-03 14:32 UTC (permalink / raw) To: intel-gfx From: Ville Syrjälä <ville.syrjala@linux.intel.com> Add a new pipe config check macro PIPE_CONF_CHECK_CLOCK_FUZZY() to make it trivial and error proof to compare clocks in a fuzzy manner. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/intel_display.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 1fea189..bfa531a 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -8601,6 +8601,15 @@ intel_pipe_config_compare(struct drm_device *dev, return false; \ } +#define PIPE_CONF_CHECK_CLOCK_FUZZY(name) \ + if (!intel_fuzzy_clock_check(current_config->name, pipe_config->name)) { \ + DRM_ERROR("mismatch in " #name " " \ + "(expected %i, found %i)\n", \ + current_config->name, \ + pipe_config->name); \ + return false; \ + } + #define PIPE_CONF_QUIRK(quirk) \ ((current_config->quirks | pipe_config->quirks) & (quirk)) @@ -8663,21 +8672,16 @@ intel_pipe_config_compare(struct drm_device *dev, PIPE_CONF_CHECK_X(dpll_hw_state.fp0); PIPE_CONF_CHECK_X(dpll_hw_state.fp1); + if (!IS_HASWELL(dev)) { + PIPE_CONF_CHECK_CLOCK_FUZZY(adjusted_mode.clock); + } + #undef PIPE_CONF_CHECK_X #undef PIPE_CONF_CHECK_I #undef PIPE_CONF_CHECK_FLAGS +#undef PIPE_CONF_CHECK_CLOCK_FUZZY #undef PIPE_CONF_QUIRK - if (!IS_HASWELL(dev)) { - if (!intel_fuzzy_clock_check(current_config->adjusted_mode.clock, - pipe_config->adjusted_mode.clock)) { - DRM_ERROR("mismatch in clock (expected %d, found %d)\n", - current_config->adjusted_mode.clock, - pipe_config->adjusted_mode.clock); - return false; - } - } - return true; } -- 1.8.1.5 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 2/3] drm/i915: Add PIPE_CONF_CHECK_CLOCK_FUZZY() 2013-09-03 14:32 ` [PATCH 2/3] drm/i915: Add PIPE_CONF_CHECK_CLOCK_FUZZY() ville.syrjala @ 2013-09-04 9:11 ` Jani Nikula 0 siblings, 0 replies; 5+ messages in thread From: Jani Nikula @ 2013-09-04 9:11 UTC (permalink / raw) To: ville.syrjala, intel-gfx On Tue, 03 Sep 2013, ville.syrjala@linux.intel.com wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Add a new pipe config check macro PIPE_CONF_CHECK_CLOCK_FUZZY() to make > it trivial and error proof to compare clocks in a fuzzy manner. > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/intel_display.c | 24 ++++++++++++++---------- > 1 file changed, 14 insertions(+), 10 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 1fea189..bfa531a 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -8601,6 +8601,15 @@ intel_pipe_config_compare(struct drm_device *dev, > return false; \ > } > > +#define PIPE_CONF_CHECK_CLOCK_FUZZY(name) \ > + if (!intel_fuzzy_clock_check(current_config->name, pipe_config->name)) { \ > + DRM_ERROR("mismatch in " #name " " \ > + "(expected %i, found %i)\n", \ > + current_config->name, \ > + pipe_config->name); \ > + return false; \ > + } I think I'd find this to have more clarity, but ymmv: DRM_ERROR("mismatch in %s (expected %i, found %i)\n", \ #name, current_config->name, pipe_config->name); \ Either way, on the series, Reviewed-by: Jani Nikula <jani.nikula@intel.com> > + > #define PIPE_CONF_QUIRK(quirk) \ > ((current_config->quirks | pipe_config->quirks) & (quirk)) > > @@ -8663,21 +8672,16 @@ intel_pipe_config_compare(struct drm_device *dev, > PIPE_CONF_CHECK_X(dpll_hw_state.fp0); > PIPE_CONF_CHECK_X(dpll_hw_state.fp1); > > + if (!IS_HASWELL(dev)) { > + PIPE_CONF_CHECK_CLOCK_FUZZY(adjusted_mode.clock); > + } > + > #undef PIPE_CONF_CHECK_X > #undef PIPE_CONF_CHECK_I > #undef PIPE_CONF_CHECK_FLAGS > +#undef PIPE_CONF_CHECK_CLOCK_FUZZY > #undef PIPE_CONF_QUIRK > > - if (!IS_HASWELL(dev)) { > - if (!intel_fuzzy_clock_check(current_config->adjusted_mode.clock, > - pipe_config->adjusted_mode.clock)) { > - DRM_ERROR("mismatch in clock (expected %d, found %d)\n", > - current_config->adjusted_mode.clock, > - pipe_config->adjusted_mode.clock); > - return false; > - } > - } > - > return true; > } > > -- > 1.8.1.5 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Jani Nikula, Intel Open Source Technology Center _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 3/3] drm/i915: Add fuzzy clock check for port_clock 2013-09-03 14:32 [PATCH 0/3] drm/i915: Fuzzy clock check for port_clock ville.syrjala 2013-09-03 14:32 ` [PATCH 1/3] drm/i915: Make intel_fuzzy_clock_check() take in arbitrary clocks ville.syrjala 2013-09-03 14:32 ` [PATCH 2/3] drm/i915: Add PIPE_CONF_CHECK_CLOCK_FUZZY() ville.syrjala @ 2013-09-03 14:32 ` ville.syrjala 2 siblings, 0 replies; 5+ messages in thread From: ville.syrjala @ 2013-09-03 14:32 UTC (permalink / raw) To: intel-gfx From: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- drivers/gpu/drm/i915/intel_display.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index bfa531a..05ff91d 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -8674,6 +8674,7 @@ intel_pipe_config_compare(struct drm_device *dev, if (!IS_HASWELL(dev)) { PIPE_CONF_CHECK_CLOCK_FUZZY(adjusted_mode.clock); + PIPE_CONF_CHECK_CLOCK_FUZZY(port_clock); } #undef PIPE_CONF_CHECK_X -- 1.8.1.5 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-09-04 9:09 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-09-03 14:32 [PATCH 0/3] drm/i915: Fuzzy clock check for port_clock ville.syrjala 2013-09-03 14:32 ` [PATCH 1/3] drm/i915: Make intel_fuzzy_clock_check() take in arbitrary clocks ville.syrjala 2013-09-03 14:32 ` [PATCH 2/3] drm/i915: Add PIPE_CONF_CHECK_CLOCK_FUZZY() ville.syrjala 2013-09-04 9:11 ` Jani Nikula 2013-09-03 14:32 ` [PATCH 3/3] drm/i915: Add fuzzy clock check for port_clock ville.syrjala
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox