[PATCH v2 5/7] drm/i915/power: use intel_de_wait_custom() instead of wait_for_us()
Gustavo Sousa
gustavo.sousa at intel.com
Thu Jul 31 13:25:28 UTC 2025
Quoting Jani Nikula (2025-07-31 07:05:12-03:00)
>Prefer the register read specific wait function over i915 wait_for_us().
>
>Signed-off-by: Jani Nikula <jani.nikula at intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa at intel.com>
>---
> drivers/gpu/drm/i915/display/intel_display_power.c | 14 ++++++++++----
> 1 file changed, 10 insertions(+), 4 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c b/drivers/gpu/drm/i915/display/intel_display_power.c
>index 273054c22325..2c2b23a138cc 100644
>--- a/drivers/gpu/drm/i915/display/intel_display_power.c
>+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
>@@ -1278,6 +1278,7 @@ static void hsw_disable_lcpll(struct intel_display *display,
> bool switch_to_fclk, bool allow_power_down)
> {
> u32 val;
>+ int ret;
>
> assert_can_disable_lcpll(display);
>
>@@ -1287,8 +1288,10 @@ static void hsw_disable_lcpll(struct intel_display *display,
> val |= LCPLL_CD_SOURCE_FCLK;
> intel_de_write(display, LCPLL_CTL, val);
>
>- if (wait_for_us(intel_de_read(display, LCPLL_CTL) &
>- LCPLL_CD_SOURCE_FCLK_DONE, 1))
>+ ret = intel_de_wait_custom(display, LCPLL_CTL,
>+ LCPLL_CD_SOURCE_FCLK_DONE, LCPLL_CD_SOURCE_FCLK_DONE,
>+ 1, 0, NULL);
>+ if (ret)
> drm_err(display->drm, "Switching to FCLK failed\n");
>
> val = intel_de_read(display, LCPLL_CTL);
>@@ -1324,6 +1327,7 @@ static void hsw_restore_lcpll(struct intel_display *display)
> {
> struct drm_i915_private __maybe_unused *dev_priv = to_i915(display->drm);
> u32 val;
>+ int ret;
>
> val = intel_de_read(display, LCPLL_CTL);
>
>@@ -1358,8 +1362,10 @@ static void hsw_restore_lcpll(struct intel_display *display)
> if (val & LCPLL_CD_SOURCE_FCLK) {
> intel_de_rmw(display, LCPLL_CTL, LCPLL_CD_SOURCE_FCLK, 0);
>
>- if (wait_for_us((intel_de_read(display, LCPLL_CTL) &
>- LCPLL_CD_SOURCE_FCLK_DONE) == 0, 1))
>+ ret = intel_de_wait_custom(display, LCPLL_CTL,
>+ LCPLL_CD_SOURCE_FCLK_DONE, 0,
>+ 1, 0, NULL);
>+ if (ret)
> drm_err(display->drm,
> "Switching back to LCPLL failed\n");
> }
>--
>2.39.5
>
More information about the Intel-xe
mailing list