On Tue, Oct 22, 2024 at 06:57:21PM +0300, Jani Nikula wrote:
> There are some unconverted stragglers left in the HDCP API still using
> struct drm_i915_private. Convert to struct intel_display.
> 
> Signed-off-by: Jani Nikula <[email protected]>

Reviewed-by: Rodrigo Vivi <[email protected]>

> ---
>  .../drm/i915/display/intel_display_driver.c   |  7 +++--
>  drivers/gpu/drm/i915/display/intel_dp.c       |  3 +-
>  drivers/gpu/drm/i915/display/intel_dp_hdcp.c  |  5 ++--
>  drivers/gpu/drm/i915/display/intel_hdcp.c     | 30 ++++++++-----------
>  drivers/gpu/drm/i915/display/intel_hdcp.h     | 10 +++----
>  drivers/gpu/drm/i915/display/intel_hdmi.c     |  3 +-
>  drivers/gpu/drm/xe/display/xe_display.c       |  4 ++-
>  7 files changed, 30 insertions(+), 32 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c 
> b/drivers/gpu/drm/i915/display/intel_display_driver.c
> index ae5470078173..3b37a8a69201 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_driver.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
> @@ -485,7 +485,7 @@ int intel_display_driver_probe_nogem(struct 
> drm_i915_private *i915)
>       return 0;
>  
>  err_hdcp:
> -     intel_hdcp_component_fini(i915);
> +     intel_hdcp_component_fini(display);
>  err_mode_config:
>       intel_mode_config_cleanup(i915);
>  
> @@ -495,6 +495,7 @@ int intel_display_driver_probe_nogem(struct 
> drm_i915_private *i915)
>  /* part #3: call after gem init */
>  int intel_display_driver_probe(struct drm_i915_private *i915)
>  {
> +     struct intel_display *display = &i915->display;
>       int ret;
>  
>       if (!HAS_DISPLAY(i915))
> @@ -505,7 +506,7 @@ int intel_display_driver_probe(struct drm_i915_private 
> *i915)
>        * the BIOS fb takeover and whatever else magic ggtt reservations
>        * happen during gem/ggtt init.
>        */
> -     intel_hdcp_component_init(i915);
> +     intel_hdcp_component_init(display);
>  
>       /*
>        * Force all active planes to recompute their states. So that on
> @@ -600,7 +601,7 @@ void intel_display_driver_remove_noirq(struct 
> drm_i915_private *i915)
>       /* flush any delayed tasks or pending work */
>       flush_workqueue(i915->unordered_wq);
>  
> -     intel_hdcp_component_fini(i915);
> +     intel_hdcp_component_fini(display);
>  
>       intel_mode_config_cleanup(i915);
>  
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 6aba1d03a9d2..df3aa5fe3441 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -6415,6 +6415,7 @@ bool
>  intel_dp_init_connector(struct intel_digital_port *dig_port,
>                       struct intel_connector *intel_connector)
>  {
> +     struct intel_display *display = to_intel_display(dig_port);
>       struct drm_connector *connector = &intel_connector->base;
>       struct intel_dp *intel_dp = &dig_port->dp;
>       struct intel_encoder *intel_encoder = &dig_port->base;
> @@ -6504,7 +6505,7 @@ intel_dp_init_connector(struct intel_digital_port 
> *dig_port,
>  
>       intel_dp_add_properties(intel_dp, connector);
>  
> -     if (is_hdcp_supported(dev_priv, port) && !intel_dp_is_edp(intel_dp)) {
> +     if (is_hdcp_supported(display, port) && !intel_dp_is_edp(intel_dp)) {
>               int ret = intel_dp_hdcp_init(dig_port, intel_connector);
>               if (ret)
>                       drm_dbg_kms(&dev_priv->drm,
> diff --git a/drivers/gpu/drm/i915/display/intel_dp_hdcp.c 
> b/drivers/gpu/drm/i915/display/intel_dp_hdcp.c
> index dce645a07cdb..5d77adaaf566 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp_hdcp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp_hdcp.c
> @@ -873,13 +873,12 @@ static const struct intel_hdcp_shim 
> intel_dp_mst_hdcp_shim = {
>  int intel_dp_hdcp_init(struct intel_digital_port *dig_port,
>                      struct intel_connector *intel_connector)
>  {
> -     struct drm_device *dev = intel_connector->base.dev;
> -     struct drm_i915_private *dev_priv = to_i915(dev);
> +     struct intel_display *display = to_intel_display(dig_port);
>       struct intel_encoder *intel_encoder = &dig_port->base;
>       enum port port = intel_encoder->port;
>       struct intel_dp *intel_dp = &dig_port->dp;
>  
> -     if (!is_hdcp_supported(dev_priv, port))
> +     if (!is_hdcp_supported(display, port))
>               return 0;
>  
>       if (intel_connector->mst_port)
> diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c 
> b/drivers/gpu/drm/i915/display/intel_hdcp.c
> index ed6aa87403e2..870084af92d0 100644
> --- a/drivers/gpu/drm/i915/display/intel_hdcp.c
> +++ b/drivers/gpu/drm/i915/display/intel_hdcp.c
> @@ -1192,10 +1192,10 @@ static void intel_hdcp_prop_work(struct work_struct 
> *work)
>       drm_connector_put(&connector->base);
>  }
>  
> -bool is_hdcp_supported(struct drm_i915_private *i915, enum port port)
> +bool is_hdcp_supported(struct intel_display *display, enum port port)
>  {
> -     return DISPLAY_RUNTIME_INFO(i915)->has_hdcp &&
> -             (DISPLAY_VER(i915) >= 12 || port < PORT_E);
> +     return DISPLAY_RUNTIME_INFO(display)->has_hdcp &&
> +             (DISPLAY_VER(display) >= 12 || port < PORT_E);
>  }
>  
>  static int
> @@ -2301,9 +2301,9 @@ static int initialize_hdcp_port_data(struct 
> intel_connector *connector,
>       return 0;
>  }
>  
> -static bool is_hdcp2_supported(struct drm_i915_private *i915)
> +static bool is_hdcp2_supported(struct intel_display *display)
>  {
> -     struct intel_display *display = to_intel_display(&i915->drm);
> +     struct drm_i915_private *i915 = to_i915(display->drm);
>  
>       if (intel_hdcp_gsc_cs_required(display))
>               return true;
> @@ -2317,12 +2317,11 @@ static bool is_hdcp2_supported(struct 
> drm_i915_private *i915)
>               IS_COMETLAKE(i915));
>  }
>  
> -void intel_hdcp_component_init(struct drm_i915_private *i915)
> +void intel_hdcp_component_init(struct intel_display *display)
>  {
> -     struct intel_display *display = to_intel_display(&i915->drm);
>       int ret;
>  
> -     if (!is_hdcp2_supported(i915))
> +     if (!is_hdcp2_supported(display))
>               return;
>  
>       mutex_lock(&display->hdcp.hdcp_mutex);
> @@ -2367,19 +2366,18 @@ int intel_hdcp_init(struct intel_connector *connector,
>                   struct intel_digital_port *dig_port,
>                   const struct intel_hdcp_shim *shim)
>  {
> -     struct drm_i915_private *i915 = to_i915(connector->base.dev);
> +     struct intel_display *display = to_intel_display(connector);
>       struct intel_hdcp *hdcp = &connector->hdcp;
>       int ret;
>  
>       if (!shim)
>               return -EINVAL;
>  
> -     if (is_hdcp2_supported(i915))
> +     if (is_hdcp2_supported(display))
>               intel_hdcp2_init(connector, dig_port, shim);
>  
> -     ret =
> -     drm_connector_attach_content_protection_property(&connector->base,
> -                                                      hdcp->hdcp2_supported);
> +     ret = drm_connector_attach_content_protection_property(&connector->base,
> +                                                            
> hdcp->hdcp2_supported);
>       if (ret) {
>               hdcp->hdcp2_supported = false;
>               kfree(dig_port->hdcp_port_data.streams);
> @@ -2432,7 +2430,7 @@ static int _intel_hdcp_enable(struct intel_atomic_state 
> *state,
>               hdcp->stream_transcoder = INVALID_TRANSCODER;
>       }
>  
> -     if (DISPLAY_VER(i915) >= 12)
> +     if (DISPLAY_VER(display) >= 12)
>               dig_port->hdcp_port_data.hdcp_transcoder =
>                       intel_get_hdcp_transcoder(hdcp->cpu_transcoder);
>  
> @@ -2583,10 +2581,8 @@ void intel_hdcp_update_pipe(struct intel_atomic_state 
> *state,
>               _intel_hdcp_enable(state, encoder, crtc_state, conn_state);
>  }
>  
> -void intel_hdcp_component_fini(struct drm_i915_private *i915)
> +void intel_hdcp_component_fini(struct intel_display *display)
>  {
> -     struct intel_display *display = to_intel_display(&i915->drm);
> -
>       mutex_lock(&display->hdcp.hdcp_mutex);
>       if (!display->hdcp.comp_added) {
>               mutex_unlock(&display->hdcp.hdcp_mutex);
> diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.h 
> b/drivers/gpu/drm/i915/display/intel_hdcp.h
> index 477f2d2bb120..d99830cfb798 100644
> --- a/drivers/gpu/drm/i915/display/intel_hdcp.h
> +++ b/drivers/gpu/drm/i915/display/intel_hdcp.h
> @@ -12,13 +12,13 @@
>  
>  struct drm_connector;
>  struct drm_connector_state;
> -struct drm_i915_private;
>  struct intel_atomic_state;
>  struct intel_connector;
>  struct intel_crtc_state;
> +struct intel_digital_port;
> +struct intel_display;
>  struct intel_encoder;
>  struct intel_hdcp_shim;
> -struct intel_digital_port;
>  enum port;
>  enum transcoder;
>  
> @@ -37,14 +37,14 @@ void intel_hdcp_update_pipe(struct intel_atomic_state 
> *state,
>                           struct intel_encoder *encoder,
>                           const struct intel_crtc_state *crtc_state,
>                           const struct drm_connector_state *conn_state);
> -bool is_hdcp_supported(struct drm_i915_private *i915, enum port port);
> +bool is_hdcp_supported(struct intel_display *display, enum port port);
>  bool intel_hdcp_get_capability(struct intel_connector *connector);
>  bool intel_hdcp2_get_capability(struct intel_connector *connector);
>  void intel_hdcp_get_remote_capability(struct intel_connector *connector,
>                                     bool *hdcp_capable,
>                                     bool *hdcp2_capable);
> -void intel_hdcp_component_init(struct drm_i915_private *i915);
> -void intel_hdcp_component_fini(struct drm_i915_private *i915);
> +void intel_hdcp_component_init(struct intel_display *display);
> +void intel_hdcp_component_fini(struct intel_display *display);
>  void intel_hdcp_cleanup(struct intel_connector *connector);
>  void intel_hdcp_handle_cp_irq(struct intel_connector *connector);
>  
> diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c 
> b/drivers/gpu/drm/i915/display/intel_hdmi.c
> index 022ba3635101..665b980cc74d 100644
> --- a/drivers/gpu/drm/i915/display/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
> @@ -3025,7 +3025,6 @@ void intel_hdmi_init_connector(struct 
> intel_digital_port *dig_port,
>       struct intel_hdmi *intel_hdmi = &dig_port->hdmi;
>       struct intel_encoder *intel_encoder = &dig_port->base;
>       struct drm_device *dev = intel_encoder->base.dev;
> -     struct drm_i915_private *dev_priv = to_i915(dev);
>       enum port port = intel_encoder->port;
>       struct cec_connector_info conn_info;
>       u8 ddc_pin;
> @@ -3075,7 +3074,7 @@ void intel_hdmi_init_connector(struct 
> intel_digital_port *dig_port,
>       intel_connector_attach_encoder(intel_connector, intel_encoder);
>       intel_hdmi->attached_connector = intel_connector;
>  
> -     if (is_hdcp_supported(dev_priv, port)) {
> +     if (is_hdcp_supported(display, port)) {
>               int ret = intel_hdcp_init(intel_connector, dig_port,
>                                         &intel_hdmi_hdcp_shim);
>               if (ret)
> diff --git a/drivers/gpu/drm/xe/display/xe_display.c 
> b/drivers/gpu/drm/xe/display/xe_display.c
> index 695c27ac6b0f..b5502f335f53 100644
> --- a/drivers/gpu/drm/xe/display/xe_display.c
> +++ b/drivers/gpu/drm/xe/display/xe_display.c
> @@ -202,12 +202,14 @@ int xe_display_init(struct xe_device *xe)
>  
>  void xe_display_fini(struct xe_device *xe)
>  {
> +     struct intel_display *display = &xe->display;
> +
>       if (!xe->info.probe_display)
>               return;
>  
>       intel_hpd_poll_fini(xe);
>  
> -     intel_hdcp_component_fini(xe);
> +     intel_hdcp_component_fini(display);
>       intel_audio_deinit(xe);
>  }
>  
> -- 
> 2.39.5
> 

Reply via email to