Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/i915/dmc_wl: Extract intel_dmc_wl_flush_release_work()

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>

authored by

Gustavo Sousa and committed by
Rodrigo Vivi
f71212f5 810f3bf2

+12 -1
+11 -1
drivers/gpu/drm/i915/display/intel_dmc_wl.c
··· 349 349 if (!__intel_dmc_wl_supported(display)) 350 350 return; 351 351 352 - flush_delayed_work(&wl->work); 352 + intel_dmc_wl_flush_release_work(display); 353 353 354 354 spin_lock_irqsave(&wl->lock, flags); 355 355 ··· 375 375 376 376 out_unlock: 377 377 spin_unlock_irqrestore(&wl->lock, flags); 378 + } 379 + 380 + void intel_dmc_wl_flush_release_work(struct intel_display *display) 381 + { 382 + struct intel_dmc_wl *wl = &display->wl; 383 + 384 + if (!__intel_dmc_wl_supported(display)) 385 + return; 386 + 387 + flush_delayed_work(&wl->work); 378 388 } 379 389 380 390 void intel_dmc_wl_get(struct intel_display *display, i915_reg_t reg)
+1
drivers/gpu/drm/i915/display/intel_dmc_wl.h
··· 32 32 void intel_dmc_wl_init(struct intel_display *display); 33 33 void intel_dmc_wl_enable(struct intel_display *display, u32 dc_state); 34 34 void intel_dmc_wl_disable(struct intel_display *display); 35 + void intel_dmc_wl_flush_release_work(struct intel_display *display); 35 36 void intel_dmc_wl_get(struct intel_display *display, i915_reg_t reg); 36 37 void intel_dmc_wl_put(struct intel_display *display, i915_reg_t reg); 37 38 void intel_dmc_wl_get_noreg(struct intel_display *display);