]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/i915/pch: Make LPT LP a dedicated PCH type
authorJani Nikula <jani.nikula@intel.com>
Fri, 7 Feb 2025 10:17:36 +0000 (12:17 +0200)
committerJani Nikula <jani.nikula@intel.com>
Wed, 12 Feb 2025 10:36:18 +0000 (12:36 +0200)
Add PCH type PCH_LPT_LP and rename PCH_LPT to PCH_LPT_H for
consistency. Keep the existing HAS_PCH_LPT*() macros, but express them
in terms of the PCH types instead of looking at the device IDs
directly. This makes the PCH checks independent of the PCH device IDs.

Reviewed-by: Nemesa Garg <nemesa.garg@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/777b63f50b10fba1d768af25870e81b33267bdc8.1738923308.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/display/intel_backlight.c
drivers/gpu/drm/i915/soc/intel_pch.c
drivers/gpu/drm/i915/soc/intel_pch.h

index 477b21af71a4fbb7d7f9ec6ee4af8b3811d997b2..178dc6c8de80c5d5a944fd4b027536957e160609 100644 (file)
@@ -1829,7 +1829,7 @@ void intel_backlight_init_funcs(struct intel_panel *panel)
                panel->backlight.pwm_funcs = &bxt_pwm_funcs;
        } else if (INTEL_PCH_TYPE(i915) >= PCH_CNP) {
                panel->backlight.pwm_funcs = &cnp_pwm_funcs;
-       } else if (INTEL_PCH_TYPE(i915) >= PCH_LPT) {
+       } else if (INTEL_PCH_TYPE(i915) >= PCH_LPT_H) {
                if (HAS_PCH_LPT(i915))
                        panel->backlight.pwm_funcs = &lpt_pwm_funcs;
                else
index 9f7c9dbc178ebaba44f54ea522365114e967d8a3..0370ccb6943c979d420335ee3003fab6ba9ca942 100644 (file)
@@ -33,14 +33,14 @@ intel_pch_type(const struct drm_i915_private *dev_priv, unsigned short id)
                            !IS_HASWELL(dev_priv) && !IS_BROADWELL(dev_priv));
                drm_WARN_ON(&dev_priv->drm,
                            IS_HASWELL_ULT(dev_priv) || IS_BROADWELL_ULT(dev_priv));
-               return PCH_LPT;
+               return PCH_LPT_H;
        case INTEL_PCH_LPT_LP_DEVICE_ID_TYPE:
                drm_dbg_kms(&dev_priv->drm, "Found LynxPoint LP PCH\n");
                drm_WARN_ON(&dev_priv->drm,
                            !IS_HASWELL(dev_priv) && !IS_BROADWELL(dev_priv));
                drm_WARN_ON(&dev_priv->drm,
                            !IS_HASWELL_ULT(dev_priv) && !IS_BROADWELL_ULT(dev_priv));
-               return PCH_LPT;
+               return PCH_LPT_LP;
        case INTEL_PCH_WPT_DEVICE_ID_TYPE:
                drm_dbg_kms(&dev_priv->drm, "Found WildcatPoint PCH\n");
                drm_WARN_ON(&dev_priv->drm,
@@ -48,7 +48,7 @@ intel_pch_type(const struct drm_i915_private *dev_priv, unsigned short id)
                drm_WARN_ON(&dev_priv->drm,
                            IS_HASWELL_ULT(dev_priv) || IS_BROADWELL_ULT(dev_priv));
                /* WPT is LPT compatible */
-               return PCH_LPT;
+               return PCH_LPT_H;
        case INTEL_PCH_WPT_LP_DEVICE_ID_TYPE:
                drm_dbg_kms(&dev_priv->drm, "Found WildcatPoint LP PCH\n");
                drm_WARN_ON(&dev_priv->drm,
@@ -56,7 +56,7 @@ intel_pch_type(const struct drm_i915_private *dev_priv, unsigned short id)
                drm_WARN_ON(&dev_priv->drm,
                            !IS_HASWELL_ULT(dev_priv) && !IS_BROADWELL_ULT(dev_priv));
                /* WPT is LPT compatible */
-               return PCH_LPT;
+               return PCH_LPT_LP;
        case INTEL_PCH_SPT_DEVICE_ID_TYPE:
                drm_dbg_kms(&dev_priv->drm, "Found SunrisePoint PCH\n");
                drm_WARN_ON(&dev_priv->drm,
index 89e89ede265db787f450af0b2c58579aae0d0525..bc926df14c4568450e77c3768fa9fac85dea0eca 100644 (file)
@@ -19,7 +19,8 @@ enum intel_pch {
        PCH_NONE = 0,   /* No PCH present */
        PCH_IBX,        /* Ibexpeak PCH */
        PCH_CPT,        /* Cougarpoint/Pantherpoint PCH */
-       PCH_LPT,        /* Lynxpoint/Wildcatpoint PCH */
+       PCH_LPT_H,      /* Lynxpoint/Wildcatpoint H PCH */
+       PCH_LPT_LP,     /* Lynxpoint/Wildcatpoint LP PCH */
        PCH_SPT,        /* Sunrisepoint/Kaby Lake PCH */
        PCH_CNP,        /* Cannon/Comet Lake PCH */
        PCH_ICP,        /* Ice Lake/Jasper Lake PCH */
@@ -72,13 +73,10 @@ enum intel_pch {
 #define HAS_PCH_ICP(dev_priv)                  (INTEL_PCH_TYPE(dev_priv) == PCH_ICP)
 #define HAS_PCH_CNP(dev_priv)                  (INTEL_PCH_TYPE(dev_priv) == PCH_CNP)
 #define HAS_PCH_SPT(dev_priv)                  (INTEL_PCH_TYPE(dev_priv) == PCH_SPT)
-#define HAS_PCH_LPT(dev_priv)                  (INTEL_PCH_TYPE(dev_priv) == PCH_LPT)
-#define HAS_PCH_LPT_LP(dev_priv) \
-       (INTEL_PCH_ID(dev_priv) == INTEL_PCH_LPT_LP_DEVICE_ID_TYPE || \
-        INTEL_PCH_ID(dev_priv) == INTEL_PCH_WPT_LP_DEVICE_ID_TYPE)
-#define HAS_PCH_LPT_H(dev_priv) \
-       (INTEL_PCH_ID(dev_priv) == INTEL_PCH_LPT_DEVICE_ID_TYPE || \
-        INTEL_PCH_ID(dev_priv) == INTEL_PCH_WPT_DEVICE_ID_TYPE)
+#define HAS_PCH_LPT_H(dev_priv)                        (INTEL_PCH_TYPE(dev_priv) == PCH_LPT_H)
+#define HAS_PCH_LPT_LP(dev_priv)               (INTEL_PCH_TYPE(dev_priv) == PCH_LPT_LP)
+#define HAS_PCH_LPT(dev_priv)                  (INTEL_PCH_TYPE(dev_priv) == PCH_LPT_H || \
+                                                INTEL_PCH_TYPE(dev_priv) == PCH_LPT_LP)
 #define HAS_PCH_CPT(dev_priv)                  (INTEL_PCH_TYPE(dev_priv) == PCH_CPT)
 #define HAS_PCH_IBX(dev_priv)                  (INTEL_PCH_TYPE(dev_priv) == PCH_IBX)
 #define HAS_PCH_NOP(dev_priv)                  (INTEL_PCH_TYPE(dev_priv) == PCH_NOP)