]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915/dmc_wl: Add and use HAS_DMC_WAKELOCK()
authorGustavo Sousa <gustavo.sousa@intel.com>
Fri, 8 Nov 2024 12:57:18 +0000 (09:57 -0300)
committerMatt Roper <matthew.d.roper@intel.com>
Fri, 8 Nov 2024 17:54:06 +0000 (09:54 -0800)
A HAS_DMC_WAKELOCK() macro gives more semantic than openly checking the
display version. Define it and use it where appropriate.

v2:
  - Make this patch contain only the non-functional refactor. Functional
    changes related to including HAS_DMC() in the macro are done in
    upcoming changes. (Jani)

Cc: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241108130218.24125-14-gustavo.sousa@intel.com
drivers/gpu/drm/i915/display/intel_display_device.h
drivers/gpu/drm/i915/display/intel_dmc_wl.c

index 14d16d111ae3355243dab15987f426c8865ff38f..a8a0b4332247ea521484bd84332df88dab3cc779 100644 (file)
@@ -147,6 +147,7 @@ struct intel_display_platforms {
 #define HAS_DDI(i915)                  (DISPLAY_INFO(i915)->has_ddi)
 #define HAS_DISPLAY(i915)              (DISPLAY_RUNTIME_INFO(i915)->pipe_mask != 0)
 #define HAS_DMC(i915)                  (DISPLAY_RUNTIME_INFO(i915)->has_dmc)
+#define HAS_DMC_WAKELOCK(i915)         (DISPLAY_VER(i915) >= 20)
 #define HAS_DOUBLE_BUFFERED_M_N(i915)  (DISPLAY_VER(i915) >= 9 || IS_BROADWELL(i915))
 #define HAS_DOUBLE_WIDE(i915)          (DISPLAY_VER(i915) < 4)
 #define HAS_DP_MST(i915)               (DISPLAY_INFO(i915)->has_dp_mst)
index f2d64954916ad2dfb8e142d271a2f4df4fdce987..4ca2b990ec6ac5a7812c3c0fa9284465e1ffa486 100644 (file)
@@ -262,7 +262,7 @@ static bool intel_dmc_wl_check_range(i915_reg_t reg, u32 dc_state)
 
 static bool __intel_dmc_wl_supported(struct intel_display *display)
 {
-       if (DISPLAY_VER(display) < 20 ||
+       if (!HAS_DMC_WAKELOCK(display) ||
            !intel_dmc_has_payload(display) ||
            !display->params.enable_dmc_wl)
                return false;
@@ -275,7 +275,7 @@ void intel_dmc_wl_init(struct intel_display *display)
        struct intel_dmc_wl *wl = &display->wl;
 
        /* don't call __intel_dmc_wl_supported(), DMC is not loaded yet */
-       if (DISPLAY_VER(display) < 20 || !display->params.enable_dmc_wl)
+       if (!HAS_DMC_WAKELOCK(display) || !display->params.enable_dmc_wl)
                return;
 
        INIT_DELAYED_WORK(&wl->work, intel_dmc_wl_work);