From patchwork Wed Oct 9 19:43:55 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Imre Deak X-Patchwork-Id: 13829143 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 42F39CEE342 for ; Wed, 9 Oct 2024 19:43:33 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B359810E7F8; Wed, 9 Oct 2024 19:43:32 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="eRk7kMFk"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) by gabe.freedesktop.org (Postfix) with ESMTPS id F3FA410E7F4; Wed, 9 Oct 2024 19:43:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1728503012; x=1760039012; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=hDz5epre3ffeq813Zw0OKg1Ll6iHiGLJ+vx13GENXFY=; b=eRk7kMFk3fRilxr7TE84qHFgkXOp+dodwVvdZ7GD5cOHHzXsqVFRrWHA 7YWxQroJNiJeaIkJ3S1+ubIS3raJ98FYRU6QkrEogzGfY/aMFI9DRO/51 fE7mPFe3ef2KQgON4NchNKiu2QMtG46YBDVDAXPeExEr0E5LFlrZemI0E GzyobsFvcUkihhq3iIywCw7TLALraJXhBoG/s5epxkXLXlC6IM/Q8I95H dn6vx6ou4UnuRUoEt0PGSyBbZ+Xk0ydCibMSSznfT7quC9Oeaa2lSXBgG jPfw2aOOIJbXc4KzswUYMxrKJffS19/+M/kdYxB89huC7sVNo95TrcgGW A==; X-CSE-ConnectionGUID: iRqml3WSRpu2wBmfC5mboA== X-CSE-MsgGUID: 7zN9oP5UQiq/HCGG1hMP+Q== X-IronPort-AV: E=McAfee;i="6700,10204,11220"; a="27947097" X-IronPort-AV: E=Sophos;i="6.11,190,1725346800"; d="scan'208";a="27947097" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2024 12:43:32 -0700 X-CSE-ConnectionGUID: N3aHFSu5RcKSYNPqW5uoeA== X-CSE-MsgGUID: Gz2YpAxUQy6bLW01Cu0WQA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,190,1725346800"; d="scan'208";a="81371466" Received: from ideak-desk.fi.intel.com ([10.237.72.78]) by orviesa004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2024 12:43:31 -0700 From: Imre Deak To: intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Subject: [PATCH v2 1/4] drm/i915/dp: Assume panel power is off if runtime suspended Date: Wed, 9 Oct 2024 22:43:55 +0300 Message-ID: <20241009194358.1321200-2-imre.deak@intel.com> X-Mailer: git-send-email 2.44.2 In-Reply-To: <20241009194358.1321200-1-imre.deak@intel.com> References: <20241009194358.1321200-1-imre.deak@intel.com> MIME-Version: 1.0 X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" If the device is runtime suspended the eDP panel power is also off. Ignore a short HPD on eDP if the device is suspended accordingly, instead of checking the panel power state via the PPS registers for the same purpose. The latter involves runtime resuming the device unnecessarily, in a frequent scenario where the panel generates a spurious short HPD after disabling the panel power and the device is runtime suspended. Signed-off-by: Imre Deak Reviewed-by: Jonathan Cavitt --- drivers/gpu/drm/i915/display/intel_dp.c | 5 ++++- drivers/gpu/drm/i915/intel_runtime_pm.h | 8 +++++++- drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h | 8 ++++++++ 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index fbb096be02ade..3eff35dd59b8a 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -85,6 +85,7 @@ #include "intel_pch_display.h" #include "intel_pps.h" #include "intel_psr.h" +#include "intel_runtime_pm.h" #include "intel_quirks.h" #include "intel_tc.h" #include "intel_vdsc.h" @@ -6054,7 +6055,9 @@ intel_dp_hpd_pulse(struct intel_digital_port *dig_port, bool long_hpd) u8 dpcd[DP_RECEIVER_CAP_SIZE]; if (dig_port->base.type == INTEL_OUTPUT_EDP && - (long_hpd || !intel_pps_have_panel_power_or_vdd(intel_dp))) { + (long_hpd || + intel_runtime_pm_suspended(&i915->runtime_pm) || + !intel_pps_have_panel_power_or_vdd(intel_dp))) { /* * vdd off can generate a long/short pulse on eDP which * would require vdd on to handle it, and thus we diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.h b/drivers/gpu/drm/i915/intel_runtime_pm.h index 126f8320f86eb..e22669d61e954 100644 --- a/drivers/gpu/drm/i915/intel_runtime_pm.h +++ b/drivers/gpu/drm/i915/intel_runtime_pm.h @@ -96,10 +96,16 @@ intel_rpm_wakelock_count(int wakeref_count) return wakeref_count >> INTEL_RPM_WAKELOCK_SHIFT; } +static inline bool +intel_runtime_pm_suspended(struct intel_runtime_pm *rpm) +{ + return pm_runtime_suspended(rpm->kdev); +} + static inline void assert_rpm_device_not_suspended(struct intel_runtime_pm *rpm) { - WARN_ONCE(pm_runtime_suspended(rpm->kdev), + WARN_ONCE(intel_runtime_pm_suspended(rpm), "Device suspended during HW access\n"); } diff --git a/drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h b/drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h index cba587ceba1b6..274042bff1bec 100644 --- a/drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h +++ b/drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h @@ -20,6 +20,14 @@ static inline void enable_rpm_wakeref_asserts(void *rpm) { } +static inline bool +intel_runtime_pm_suspended(struct xe_runtime_pm *pm) +{ + struct xe_device *xe = container_of(pm, struct xe_device, runtime_pm); + + return pm_runtime_suspended(xe->drm.dev); +} + static inline intel_wakeref_t intel_runtime_pm_get(struct xe_runtime_pm *pm) { struct xe_device *xe = container_of(pm, struct xe_device, runtime_pm); From patchwork Wed Oct 9 19:43:56 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Imre Deak X-Patchwork-Id: 13829145 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A49BCCEE346 for ; Wed, 9 Oct 2024 19:43:35 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 044A610E7E9; Wed, 9 Oct 2024 19:43:35 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="KZhee7R2"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2FF9510E7FE; Wed, 9 Oct 2024 19:43:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1728503013; x=1760039013; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=HZc9bcSvtyymE9c9otzAxVRTUQenE+6s2ZFh85Q92kI=; b=KZhee7R2lQ/6oFz8i9KOAPAa+oFs6BQzVlumkE0c5PUVJcZBNW7JeFK/ N+7YTbAtnCi3HtuitXTlPp5AfHw2u6CNqpoa1TjLzdpcqfUM6+QrQI93g ZImMB+hckgploWoq/e/lq8ay6nKhuIciZdu/bkRgc0wIR250w2J6xjd0G NO5zDJH2MVjZAQpYQrUIC0y1QO+YADT/cbmO8yV9mcrp6OAKUSjqU9MWv aS3qI6EV2+24xpcsC0DCtdhCZeU7auxMxma9wuF5svCofqhCJDbZvNx1G yDwwWpt0EbKb9Y8L6e+UFtvtB8R9xBYPYmijJrLhAegxAgQ3C79YdRzME Q==; X-CSE-ConnectionGUID: wscvBKZzS6OmXopuJm+UDA== X-CSE-MsgGUID: f6C0pPNCSzKukVvd5yEmwA== X-IronPort-AV: E=McAfee;i="6700,10204,11220"; a="27947098" X-IronPort-AV: E=Sophos;i="6.11,190,1725346800"; d="scan'208";a="27947098" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2024 12:43:33 -0700 X-CSE-ConnectionGUID: zlZ1/eq+SAO2PXLvUikZoA== X-CSE-MsgGUID: 2vy4LKXpRbO5IwXMeQ3lhg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,190,1725346800"; d="scan'208";a="81371470" Received: from ideak-desk.fi.intel.com ([10.237.72.78]) by orviesa004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2024 12:43:32 -0700 From: Imre Deak To: intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Subject: [PATCH v2 2/4] drm/i915/dp: Disable unnecessary HPD polling for eDP Date: Wed, 9 Oct 2024 22:43:56 +0300 Message-ID: <20241009194358.1321200-3-imre.deak@intel.com> X-Mailer: git-send-email 2.44.2 In-Reply-To: <20241009194358.1321200-1-imre.deak@intel.com> References: <20241009194358.1321200-1-imre.deak@intel.com> MIME-Version: 1.0 X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" A registered eDP connector is considered to be always connected, so it's unnecessary to poll it for a connect/disconnect event. Polling it involves AUX accesses toggling the panel power, which in turn can generate a spurious short HPD pulse and possibly a new poll cycle via the short HPD handler runtime resuming the device. Avoid this by disabling the polling for eDP connectors. This avoids IGT tests timing out while waiting for the device to runtime suspend, the timeout caused by the above runtime resume->poll->suspend-> resume cycle keeping the device in the resumed state. Testcase: igt/kms_pm_rpm/unverisal-planes Signed-off-by: Imre Deak Reviewed-by: Jonathan Cavitt --- drivers/gpu/drm/i915/display/intel_dp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index 3eff35dd59b8a..6b27fabd61c37 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -6476,7 +6476,8 @@ intel_dp_init_connector(struct intel_digital_port *dig_port, if (!HAS_GMCH(dev_priv) && DISPLAY_VER(dev_priv) < 12) connector->interlace_allowed = true; - intel_connector->polled = DRM_CONNECTOR_POLL_HPD; + if (type != DRM_MODE_CONNECTOR_eDP) + intel_connector->polled = DRM_CONNECTOR_POLL_HPD; intel_connector->base.polled = intel_connector->polled; intel_connector_attach_encoder(intel_connector, intel_encoder); From patchwork Wed Oct 9 19:43:57 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Imre Deak X-Patchwork-Id: 13829146 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BF9DECEE347 for ; Wed, 9 Oct 2024 19:43:36 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 52A1010E7D7; Wed, 9 Oct 2024 19:43:36 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="g71s9z8U"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) by gabe.freedesktop.org (Postfix) with ESMTPS id D03EB10E7E5; Wed, 9 Oct 2024 19:43:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1728503015; x=1760039015; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=JFUBkcOcy305PEfMSBynLbjmfkMBCs+1T5xeFKeyiP0=; b=g71s9z8U7dmx7cZaIRxKYN25QSwHdt6/mvDmeu19UsYqVWrE1aUMezx5 O+Ut0w/Wsadc5dpvaELGQaVoD3dwwII5MQD63RpTVKkNWWtPwJDRnpPUN t8xJJ/nRj68ArN4ekhdWNwLus2dmFPjR4PGdd7OWAi/CkWSsjb8f0ULvF mN+EUW1ZuvZWGpHUMGzlrISUfxXyaAUQti6AFCHeOc9qH1dC01KcXjUbe AdnN/22iBzTKMMdxCfSVIFu5oH87d6rts/nISN1a6uWs8CK/vvFW/ufGj VB1uIUOMNGoUQ1Yj5VcDKFutv614RDsz/wsW/MI9cYUpG8CawEdVGQqIw A==; X-CSE-ConnectionGUID: 3oPD7xK5RNW2NVWBQuGAzg== X-CSE-MsgGUID: y2pP6D4iRL6v8Getkqc9Zg== X-IronPort-AV: E=McAfee;i="6700,10204,11220"; a="27947105" X-IronPort-AV: E=Sophos;i="6.11,190,1725346800"; d="scan'208";a="27947105" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2024 12:43:35 -0700 X-CSE-ConnectionGUID: VodtasvLSJS0ft6EzWujRg== X-CSE-MsgGUID: L7QkBD7QT6erq7TUW8GXaA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,190,1725346800"; d="scan'208";a="81371477" Received: from ideak-desk.fi.intel.com ([10.237.72.78]) by orviesa004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2024 12:43:33 -0700 From: Imre Deak To: intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Cc: Rodrigo Vivi , Jonathan Cavitt Subject: [PATCH v2 3/4] drm/xe/display: Separate the d3cold and non-d3cold runtime PM handling Date: Wed, 9 Oct 2024 22:43:57 +0300 Message-ID: <20241009194358.1321200-4-imre.deak@intel.com> X-Mailer: git-send-email 2.44.2 In-Reply-To: <20241009194358.1321200-1-imre.deak@intel.com> References: <20241009194358.1321200-1-imre.deak@intel.com> MIME-Version: 1.0 X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" For clarity separate the d3cold and non-d3cold runtime PM handling. The only change in behavior is disabling polling later during runtime resume. This shouldn't make a difference, since the poll disabling is handled from a work, which could run at any point wrt. the runtime resume handler. The work will also require a runtime PM reference, syncing it with the resume handler. Cc: Rodrigo Vivi Reviewed-by: Jonathan Cavitt Signed-off-by: Imre Deak --- drivers/gpu/drm/xe/display/xe_display.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/xe/display/xe_display.c b/drivers/gpu/drm/xe/display/xe_display.c index ca00a365080fb..cb2449b7921ac 100644 --- a/drivers/gpu/drm/xe/display/xe_display.c +++ b/drivers/gpu/drm/xe/display/xe_display.c @@ -345,6 +345,9 @@ static void __xe_display_pm_suspend(struct xe_device *xe, bool runtime) intel_opregion_suspend(display, s2idle ? PCI_D1 : PCI_D3cold); intel_dmc_suspend(display); + + if (runtime && has_display(xe)) + intel_hpd_poll_enable(xe); } void xe_display_pm_suspend(struct xe_device *xe) @@ -387,8 +390,10 @@ void xe_display_pm_runtime_suspend(struct xe_device *xe) if (!xe->info.probe_display) return; - if (xe->d3cold.allowed) + if (xe->d3cold.allowed) { __xe_display_pm_suspend(xe, true); + return; + } intel_hpd_poll_enable(xe); } @@ -453,9 +458,11 @@ static void __xe_display_pm_resume(struct xe_device *xe, bool runtime) intel_display_driver_resume(xe); drm_kms_helper_poll_enable(&xe->drm); intel_display_driver_enable_user_access(xe); - intel_hpd_poll_disable(xe); } + if (has_display(xe)) + intel_hpd_poll_disable(xe); + intel_opregion_resume(display); if (!runtime) @@ -474,10 +481,12 @@ void xe_display_pm_runtime_resume(struct xe_device *xe) if (!xe->info.probe_display) return; - intel_hpd_poll_disable(xe); - - if (xe->d3cold.allowed) + if (xe->d3cold.allowed) { __xe_display_pm_resume(xe, true); + return; + } + + intel_hpd_poll_disable(xe); } From patchwork Wed Oct 9 19:43:58 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Imre Deak X-Patchwork-Id: 13829147 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 67547CEE346 for ; Wed, 9 Oct 2024 19:43:38 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 119D110E7F2; Wed, 9 Oct 2024 19:43:38 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="Uv8eiGpJ"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6FBE810E7E5; Wed, 9 Oct 2024 19:43:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1728503017; x=1760039017; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=gDsePqyzRM7JzGKr6vlRCFbFdZj6RQDl6u8Ly9CvtbI=; b=Uv8eiGpJ3V17DogqaummgBCbc+x48IwO1tnm/6J+xQyCxU2l1bky2kHs RuSTLWbTxewVP6UEHT/R7zIDzP/jIFPLxji+bY+/e4wG1n8aomPcyd5BW wOSNOgsdKMIPABQ6GONJYR61T3pzRve3FvQZgfG92ZpTaha859fA0yXDh v4h7fXGgkcnKPG1VtSeuvAS8uGz3C1B1jb/Te1+WeEI3DsHz38LyL/iHL Amjm3ER3heqkXgiIyA2CkN82tlQhmT3TAaj40k3UKGUuzlVWGP/sos23v jccmUqu7uWSodLdMHeE+Nv4pFB0Uk9QCpaAtHyw8GBtczdAwXE2EkXfOg A==; X-CSE-ConnectionGUID: ApF1poUcQFOrTOYvf7g3XQ== X-CSE-MsgGUID: zSwjhfCqRYe3m1ia6ipZwA== X-IronPort-AV: E=McAfee;i="6700,10204,11220"; a="27947107" X-IronPort-AV: E=Sophos;i="6.11,190,1725346800"; d="scan'208";a="27947107" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2024 12:43:37 -0700 X-CSE-ConnectionGUID: FmEUtDWiRzKa+lbiQlz4wg== X-CSE-MsgGUID: zLp859QeTzegSCFNCgrweg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,190,1725346800"; d="scan'208";a="81371485" Received: from ideak-desk.fi.intel.com ([10.237.72.78]) by orviesa004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2024 12:43:35 -0700 From: Imre Deak To: intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Cc: Rodrigo Vivi , Jonathan Cavitt Subject: [PATCH v2 4/4] drm/xe/display: Add missing HPD interrupt enabling during non-d3cold RPM resume Date: Wed, 9 Oct 2024 22:43:58 +0300 Message-ID: <20241009194358.1321200-5-imre.deak@intel.com> X-Mailer: git-send-email 2.44.2 In-Reply-To: <20241009194358.1321200-1-imre.deak@intel.com> References: <20241009194358.1321200-1-imre.deak@intel.com> MIME-Version: 1.0 X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Atm the display HPD interrupts that got disabled during runtime suspend, are re-enabled only if d3cold is enabled. Fix things by also re-enabling the interrupts if d3cold is disabled. Cc: Rodrigo Vivi Reviewed-by: Jonathan Cavitt Signed-off-by: Imre Deak --- drivers/gpu/drm/xe/display/xe_display.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/xe/display/xe_display.c b/drivers/gpu/drm/xe/display/xe_display.c index cb2449b7921ac..695c27ac6b0f8 100644 --- a/drivers/gpu/drm/xe/display/xe_display.c +++ b/drivers/gpu/drm/xe/display/xe_display.c @@ -486,6 +486,7 @@ void xe_display_pm_runtime_resume(struct xe_device *xe) return; } + intel_hpd_init(xe); intel_hpd_poll_disable(xe); }