Like was done for ICL, let's convert the voltage level lookup to use
frequency ranges rather than individual frequencies. For deciding the
voltage, the individual value doesn't really matter.

Signed-off-by: Lucas De Marchi <[email protected]>
---
 drivers/gpu/drm/i915/intel_cdclk.c | 20 +++++++-------------
 1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_cdclk.c 
b/drivers/gpu/drm/i915/intel_cdclk.c
index 80e22507cd34..8993ab283562 100644
--- a/drivers/gpu/drm/i915/intel_cdclk.c
+++ b/drivers/gpu/drm/i915/intel_cdclk.c
@@ -809,20 +809,14 @@ static int skl_calc_cdclk(int min_cdclk, int vco)
 
 static u8 skl_calc_voltage_level(int cdclk)
 {
-       switch (cdclk) {
-       default:
-       case 308571:
-       case 337500:
-               return 0;
-       case 450000:
-       case 432000:
-               return 1;
-       case 540000:
-               return 2;
-       case 617143:
-       case 675000:
+       if (cdclk > 540000)
                return 3;
-       }
+       else if (cdclk > 450000)
+               return 2;
+       else if (cdclk > 337500)
+               return 1;
+       else
+               return 0;
 }
 
 static void skl_dpll0_update(struct drm_i915_private *dev_priv,
-- 
2.21.0

_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to