[PATCH 06/10] drm/i915/xe3lpd: Add macro to choose HDCP_LINE_REKEY bit
Kandpal, Suraj
suraj.kandpal at intel.com
Thu Oct 10 04:17:56 UTC 2024
> -----Original Message-----
> From: Jani Nikula <jani.nikula at linux.intel.com>
> Sent: Wednesday, October 9, 2024 1:09 PM
> To: Atwood, Matthew S <matthew.s.atwood at intel.com>; intel-
> xe at lists.freedesktop.org; intel-gfx at lists.freedesktop.org
> Cc: Kandpal, Suraj <suraj.kandpal at intel.com>; Atwood, Matthew S
> <matthew.s.atwood at intel.com>
> Subject: Re: [PATCH 06/10] drm/i915/xe3lpd: Add macro to choose
> HDCP_LINE_REKEY bit
>
> On Tue, 08 Oct 2024, Matt Atwood <matthew.s.atwood at intel.com> wrote:
> > From: Suraj Kandpal <suraj.kandpal at intel.com>
> >
> > 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 <suraj.kandpal at intel.com>
> > Signed-off-by: Matt Atwood <matthew.s.atwood at intel.com>
> > ---
> > 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))
>
> Do we really want to extend this style to individual bits?
I just thought this might be cleaner should we use
TRANS_DDI_HDCP_LINE_REKEY_DISABLE
And
XE3_TRANS_DDI_HDCP_LINE_REKEY_DISABLE instead then?
Regards,
Suraj Kandpal
>
> BR,
> Jani.
>
> > #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)
>
> --
> Jani Nikula, Intel
More information about the Intel-xe
mailing list