]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
drm/i915/dmc_wl: Extract intel_dmc_wl_flush_release_work()
authorGustavo Sousa <gustavo.sousa@intel.com>
Fri, 29 Nov 2024 16:37:54 +0000 (13:37 -0300)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Sat, 30 Nov 2024 17:07:30 +0000 (12:07 -0500)
We will need to flush the release work from outside in an upcoming
change. Let's put that into a public interface and call it
intel_dmc_wl_flush_release_work().

Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241129164010.29887-2-gustavo.sousa@intel.com
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/display/intel_dmc_wl.c
drivers/gpu/drm/i915/display/intel_dmc_wl.h

index 853d75610489970a1cea1b84259c204859a42ff9..09075830c12ff74cd92fd766663fc3da983b4e58 100644 (file)
@@ -349,7 +349,7 @@ void intel_dmc_wl_disable(struct intel_display *display)
        if (!__intel_dmc_wl_supported(display))
                return;
 
-       flush_delayed_work(&wl->work);
+       intel_dmc_wl_flush_release_work(display);
 
        spin_lock_irqsave(&wl->lock, flags);
 
@@ -377,6 +377,16 @@ out_unlock:
        spin_unlock_irqrestore(&wl->lock, flags);
 }
 
+void intel_dmc_wl_flush_release_work(struct intel_display *display)
+{
+       struct intel_dmc_wl *wl = &display->wl;
+
+       if (!__intel_dmc_wl_supported(display))
+               return;
+
+       flush_delayed_work(&wl->work);
+}
+
 void intel_dmc_wl_get(struct intel_display *display, i915_reg_t reg)
 {
        struct intel_dmc_wl *wl = &display->wl;
index 147eeb4d843246987ca18fd29e3824588925e98d..5488fbdf29b89af0cbfff04e51842b41a6c328f5 100644 (file)
@@ -32,6 +32,7 @@ struct intel_dmc_wl {
 void intel_dmc_wl_init(struct intel_display *display);
 void intel_dmc_wl_enable(struct intel_display *display, u32 dc_state);
 void intel_dmc_wl_disable(struct intel_display *display);
+void intel_dmc_wl_flush_release_work(struct intel_display *display);
 void intel_dmc_wl_get(struct intel_display *display, i915_reg_t reg);
 void intel_dmc_wl_put(struct intel_display *display, i915_reg_t reg);
 void intel_dmc_wl_get_noreg(struct intel_display *display);