All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Oleg Vasilev <oleg.vasilev@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915: added i2c symlink to hdmi connector
Date: Fri, 17 May 2019 19:36:57 +0300	[thread overview]
Message-ID: <20190517163657.GV24299@intel.com> (raw)
In-Reply-To: <20190517162109.2319-1-oleg.vasilev@intel.com>

On Fri, May 17, 2019 at 07:21:09PM +0300, Oleg Vasilev wrote:
> Currently, the i2c adapter was available only under DP connectors.
> 
> This patch adds i2c adapter symlink to hdmi connector in order to make
> this behaviour consistent.
> 
> The initial motivation of this patch was to make igt i2c subtest
> patch [1] work on all connectors.
> 
> [1]: https://patchwork.freedesktop.org/series/60357/
> 
> Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com>
> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
> Cc: Imre Deak <imre.deak@intel.com>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_hdmi.c | 35 +++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> index 2a4086cf2692..b8ae67297878 100644
> --- a/drivers/gpu/drm/i915/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> @@ -2658,6 +2658,37 @@ static void chv_hdmi_pre_enable(struct intel_encoder *encoder,
>  	chv_phy_release_cl2_override(encoder);
>  }
>  
> +static struct i2c_adapter *
> +intel_hdmi_get_i2c_adapter(struct drm_connector *connector)
> +{
> +	struct intel_encoder *intel_encoder = intel_attached_encoder(connector);
> +	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&intel_encoder->base);
> +	struct drm_device *dev = intel_encoder->base.dev;
> +	struct drm_i915_private *dev_priv = to_i915(dev);
> +
> +	return intel_gmbus_get_adapter(dev_priv, intel_hdmi->ddc_bus);
> +}
> +
> +static void intel_hdmi_create_i2c_symlink(struct drm_connector *connector)
> +{
> +	struct i2c_adapter *adapter = intel_hdmi_get_i2c_adapter(connector);
> +	struct kobject *i2c_kobj = &adapter->dev.kobj;
> +	struct kobject *connector_kobj = &connector->kdev->kobj;
> +
> +	int ret = sysfs_create_link(connector_kobj, i2c_kobj, i2c_kobj->name);
> +
> +	WARN(ret != 0, "Failed to create i2c symlink\n");
> +}
> +
> +static void intel_hdmi_delete_i2c_symlink(struct drm_connector *connector)
> +{
> +	struct i2c_adapter *adapter = intel_hdmi_get_i2c_adapter(connector);
> +	struct kobject *i2c_kobj = &adapter->dev.kobj;
> +	struct kobject *connector_kobj = &connector->kdev->kobj;
> +
> +	sysfs_remove_link(connector_kobj, i2c_kobj->name);
> +}
> +
>  static int
>  intel_hdmi_connector_register(struct drm_connector *connector)
>  {
> @@ -2669,11 +2700,15 @@ intel_hdmi_connector_register(struct drm_connector *connector)
>  
>  	i915_debugfs_connector_add(connector);
>  
> +	intel_hdmi_create_i2c_symlink(connector);
> +
>  	return ret;
>  }
>  
>  static void intel_hdmi_destroy(struct drm_connector *connector)
>  {
> +	intel_hdmi_delete_i2c_symlink(connector);
> +

Shouldn't this be in .unregister() ?

>  	if (intel_attached_hdmi(connector)->cec_notifier)
>  		cec_notifier_put(intel_attached_hdmi(connector)->cec_notifier);
>  
> -- 
> 2.21.0

-- 
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2019-05-17 16:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-17 16:21 [PATCH] drm/i915: added i2c symlink to hdmi connector Oleg Vasilev
2019-05-17 16:36 ` Ville Syrjälä [this message]
2019-05-17 17:36 ` ✗ Fi.CI.BAT: failure for " Patchwork
2019-05-20  7:37 ` [PATCH] " Jani Nikula
2019-05-20 10:22 ` [PATCH v2] drm/i915: add i2c symlink under " Oleg Vasilev
2019-05-20 14:19 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: added i2c symlink to hdmi connector (rev2) Patchwork
2019-05-20 14:57 ` ✓ Fi.CI.BAT: success " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190517163657.GV24299@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    --cc=oleg.vasilev@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.