]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
drm/i915/icp+: Use icp_hpd_irq_setup() instead of spt_hpd_irq_setup()
authorLyude Paul <lyude@redhat.com>
Wed, 2 Jun 2021 12:44:00 +0000 (14:44 +0200)
committerStefan Bader <stefan.bader@canonical.com>
Fri, 18 Jun 2021 09:07:38 +0000 (11:07 +0200)
BugLink: https://bugs.launchpad.net/bugs/1930582
While reviewing patches for handling workarounds related to gen9 bc, Imre
from Intel discovered that we're using spt_hpd_irq_setup() on ICP+ PCHs
despite it being almost the same as icp_hpd_irq_setup(). Since we need to
be calling icp_hpd_irq_setup() to ensure that CML-S/TGP platforms function
correctly anyway, let's move platforms using PCH_ICP which aren't handled
by gen11_hpd_irq_setup() over to icp_hpd_irq_setup().

Cc: Tejas Upadhyay <tejaskumarx.surendrakumar.upadhyay@intel.com>
Signed-off-by: Lyude Paul <lyude@redhat.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210217025337.1929015-2-lyude@redhat.com
(cherry picked from commit cec3295b246b5555f6de7570d25a13a2754de245)
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Guilherme Piccoli <gpiccoli@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/gpu/drm/i915/i915_irq.c

index 1f379011bf1d908e969a306a896c3de4a4560e24..f1854cbcd8778035000d76c537f8cc4a55f40a9c 100644 (file)
@@ -4280,6 +4280,8 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
                        dev_priv->display.hpd_irq_setup = gen11_hpd_irq_setup;
                else if (IS_GEN9_LP(dev_priv))
                        dev_priv->display.hpd_irq_setup = bxt_hpd_irq_setup;
+               else if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
+                       dev_priv->display.hpd_irq_setup = icp_hpd_irq_setup;
                else if (INTEL_PCH_TYPE(dev_priv) >= PCH_SPT)
                        dev_priv->display.hpd_irq_setup = spt_hpd_irq_setup;
                else