We will be using more than one range table in
intel_dmc_wl_check_range(). As such, move the logic to a new function
and name it intel_dmc_wl_reg_in_range().

Reviewed-by: Luca Coelho <[email protected]>
Signed-off-by: Gustavo Sousa <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_dmc_wl.c | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dmc_wl.c 
b/drivers/gpu/drm/i915/display/intel_dmc_wl.c
index 1753c334f3fd..4b958a4c4358 100644
--- a/drivers/gpu/drm/i915/display/intel_dmc_wl.c
+++ b/drivers/gpu/drm/i915/display/intel_dmc_wl.c
@@ -99,21 +99,22 @@ static void intel_dmc_wl_work(struct work_struct *work)
        spin_unlock_irqrestore(&wl->lock, flags);
 }
 
-static bool intel_dmc_wl_check_range(i915_reg_t reg)
+static bool intel_dmc_wl_reg_in_range(i915_reg_t reg,
+                                     const struct intel_dmc_wl_range ranges[])
 {
-       int i;
-       bool wl_needed = false;
        u32 offset = i915_mmio_reg_offset(reg);
 
-       for (i = 0; lnl_wl_range[i].start; i++) {
-               if (offset >= lnl_wl_range[i].start &&
-                   offset <= lnl_wl_range[i].end) {
-                       wl_needed = true;
-                       break;
-               }
+       for (int i = 0; ranges[i].start; i++) {
+               if (ranges[i].start <= offset && offset <= ranges[i].end)
+                       return true;
        }
 
-       return wl_needed;
+       return false;
+}
+
+static bool intel_dmc_wl_check_range(i915_reg_t reg)
+{
+       return intel_dmc_wl_reg_in_range(reg, lnl_wl_range);
 }
 
 static bool __intel_dmc_wl_supported(struct intel_display *display)
-- 
2.47.0

Reply via email to