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.nik...@intel.com>

Seems safe.
Reviewed-by: Ville Syrjälä <ville.syrj...@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
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to