From: Suraj Kandpal <[email protected]>

DISPLAY_VER() >= 30 has the HDCP_LINE_REKEY bit redefined from
bit 12 to bit 14. Create a macro to choose the correct bit based
on DISPLAY_VER().

Signed-off-by: Suraj Kandpal <[email protected]>
Signed-off-by: Matt Atwood <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_hdcp.c | 5 +++--
 drivers/gpu/drm/i915/i915_reg.h           | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c 
b/drivers/gpu/drm/i915/display/intel_hdcp.c
index ed6aa87403e2..e9b0414590ce 100644
--- a/drivers/gpu/drm/i915/display/intel_hdcp.c
+++ b/drivers/gpu/drm/i915/display/intel_hdcp.c
@@ -47,10 +47,11 @@ intel_hdcp_disable_hdcp_line_rekeying(struct intel_encoder 
*encoder,
                        intel_de_rmw(display, 
MTL_CHICKEN_TRANS(hdcp->cpu_transcoder),
                                     0, HDCP_LINE_REKEY_DISABLE);
                else if (IS_DISPLAY_VER_STEP(display, IP_VER(14, 1), STEP_B0, 
STEP_FOREVER) ||
-                        IS_DISPLAY_VER_STEP(display, IP_VER(20, 0), STEP_B0, 
STEP_FOREVER))
+                        IS_DISPLAY_VER_STEP(display, IP_VER(20, 0), STEP_B0, 
STEP_FOREVER) ||
+                        DISPLAY_VER(display) >= 30)
                        intel_de_rmw(display,
                                     TRANS_DDI_FUNC_CTL(display, 
hdcp->cpu_transcoder),
-                                    0, TRANS_DDI_HDCP_LINE_REKEY_DISABLE);
+                                    0, 
TRANS_DDI_HDCP_LINE_REKEY_DISABLE(display));
        }
 }
 
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index d30459f8d1cb..da65500cd0c8 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -3832,7 +3832,7 @@ enum skl_power_gate {
 #define  TRANS_DDI_EDP_INPUT_B_ONOFF   (5 << 12)
 #define  TRANS_DDI_EDP_INPUT_C_ONOFF   (6 << 12)
 #define  TRANS_DDI_EDP_INPUT_D_ONOFF   (7 << 12)
-#define  TRANS_DDI_HDCP_LINE_REKEY_DISABLE     REG_BIT(12)
+#define  TRANS_DDI_HDCP_LINE_REKEY_DISABLE(display)    (DISPLAY_VER(display) 
>= 30 ? REG_BIT(15) : REG_BIT(12))
 #define  TRANS_DDI_MST_TRANSPORT_SELECT_MASK   REG_GENMASK(11, 10)
 #define  TRANS_DDI_MST_TRANSPORT_SELECT(trans) \
        REG_FIELD_PREP(TRANS_DDI_MST_TRANSPORT_SELECT_MASK, trans)
-- 
2.45.0

Reply via email to