[Intel-gfx] [PATCH 4/4] drm/i915: move gmbus setup down to intel_modeset_init()

Ville Syrjälä ville.syrjala at linux.intel.com
Wed Oct 2 15:07:08 UTC 2019


On Wed, Oct 02, 2019 at 04:18:00PM +0300, Jani Nikula wrote:
> Pair the gmbus setup and teardown in the same layer. This also fixes the
> double gmbus teardown on the i915_driver_modeset_probe() error path.
> 
> Move the gmbus setup a bit later in the sequence to make the follow-up
> refactoring easier, and to pinpoint any unexpected consequences of this
> change right here, instead of the later refactoring.
> 
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>

Seems safe.
Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>

> ---
>  drivers/gpu/drm/i915/display/intel_display.c | 2 ++
>  drivers/gpu/drm/i915/i915_drv.c              | 4 ----
>  2 files changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index d99c59e97568..2a7554e3b96d 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -16233,6 +16233,8 @@ int intel_modeset_init(struct drm_i915_private *i915)
>  
>  	intel_panel_sanitize_ssc(i915);
>  
> +	intel_gmbus_setup(i915);
> +
>  	DRM_DEBUG_KMS("%d display pipe%s available.\n",
>  		      INTEL_NUM_PIPES(i915),
>  		      INTEL_NUM_PIPES(i915) > 1 ? "s" : "");
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index 7503e16aadef..91362682f489 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -53,7 +53,6 @@
>  #include "display/intel_display_types.h"
>  #include "display/intel_dp.h"
>  #include "display/intel_fbdev.h"
> -#include "display/intel_gmbus.h"
>  #include "display/intel_hotplug.h"
>  #include "display/intel_overlay.h"
>  #include "display/intel_pipe_crc.h"
> @@ -301,8 +300,6 @@ static int i915_driver_modeset_probe(struct drm_i915_private *i915)
>  	if (ret)
>  		goto cleanup_csr;
>  
> -	intel_gmbus_setup(i915);
> -
>  	/* Important: The output setup functions called by modeset_init need
>  	 * working irqs for e.g. gmbus and dp aux transfers. */
>  	ret = intel_modeset_init(i915);
> @@ -337,7 +334,6 @@ static int i915_driver_modeset_probe(struct drm_i915_private *i915)
>  	intel_modeset_driver_remove(i915);
>  cleanup_irq:
>  	intel_irq_uninstall(i915);
> -	intel_gmbus_teardown(i915);
>  cleanup_csr:
>  	intel_csr_ucode_fini(i915);
>  	intel_power_domains_driver_remove(i915);
> -- 
> 2.20.1

-- 
Ville Syrjälä
Intel


More information about the Intel-gfx mailing list