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

Commit ad0d6dc4 authored by Ville Syrjälä's avatar Ville Syrjälä Committed by Daniel Vetter
Browse files

drm/i915: Refactor max WM level



Pull the expected max WM level determinations out to a separate
function. Will have another user soon.

Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 8de123a5
Loading
Loading
Loading
Loading
+11 −8
Original line number Original line Diff line number Diff line
@@ -2561,19 +2561,22 @@ static void intel_fixup_cur_wm_latency(struct drm_device *dev, uint16_t wm[5])
		wm[3] *= 2;
		wm[3] *= 2;
}
}


static void intel_print_wm_latency(struct drm_device *dev,
static int ilk_wm_max_level(const struct drm_device *dev)
				   const char *name,
				   const uint16_t wm[5])
{
{
	int level, max_level;

	/* how many WM levels are we expecting */
	/* how many WM levels are we expecting */
	if (IS_HASWELL(dev))
	if (IS_HASWELL(dev))
		max_level = 4;
		return 4;
	else if (INTEL_INFO(dev)->gen >= 6)
	else if (INTEL_INFO(dev)->gen >= 6)
		max_level = 3;
		return 3;
	else
	else
		max_level = 2;
		return 2;
}

static void intel_print_wm_latency(struct drm_device *dev,
				   const char *name,
				   const uint16_t wm[5])
{
	int level, max_level = ilk_wm_max_level(dev);


	for (level = 0; level <= max_level; level++) {
	for (level = 0; level <= max_level; level++) {
		unsigned int latency = wm[level];
		unsigned int latency = wm[level];