intel-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] drm/i915: added i2c symlink to hdmi connector
@ 2019-05-17 16:21 Oleg Vasilev
  2019-05-17 16:36 ` Ville Syrjälä
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Oleg Vasilev @ 2019-05-17 16:21 UTC (permalink / raw)
  To: intel-gfx; +Cc: Jani Nikula

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);
+
 	if (intel_attached_hdmi(connector)->cec_notifier)
 		cec_notifier_put(intel_attached_hdmi(connector)->cec_notifier);
 
-- 
2.21.0

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

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] drm/i915: added i2c symlink to hdmi connector
  2019-05-17 16:21 [PATCH] drm/i915: added i2c symlink to hdmi connector Oleg Vasilev
@ 2019-05-17 16:36 ` Ville Syrjälä
  2019-05-17 17:36 ` ✗ Fi.CI.BAT: failure for " Patchwork
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Ville Syrjälä @ 2019-05-17 16:36 UTC (permalink / raw)
  To: Oleg Vasilev; +Cc: Jani Nikula, intel-gfx

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* ✗ Fi.CI.BAT: failure for drm/i915: added i2c symlink to hdmi connector
  2019-05-17 16:21 [PATCH] drm/i915: added i2c symlink to hdmi connector Oleg Vasilev
  2019-05-17 16:36 ` Ville Syrjälä
@ 2019-05-17 17:36 ` Patchwork
  2019-05-20  7:37 ` [PATCH] " Jani Nikula
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2019-05-17 17:36 UTC (permalink / raw)
  To: Oleg Vasilev; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: added i2c symlink to hdmi connector
URL   : https://patchwork.freedesktop.org/series/60794/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_6096 -> Patchwork_13034
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with Patchwork_13034 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_13034, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in Patchwork_13034:

### IGT changes ###

#### Possible regressions ####

  * igt@i915_module_load@reload:
    - fi-kbl-r:           [PASS][1] -> [INCOMPLETE][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-kbl-r/igt@i915_module_load@reload.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-kbl-r/igt@i915_module_load@reload.html
    - fi-whl-u:           [PASS][3] -> [INCOMPLETE][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-whl-u/igt@i915_module_load@reload.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-whl-u/igt@i915_module_load@reload.html
    - fi-skl-iommu:       [PASS][5] -> [INCOMPLETE][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-skl-iommu/igt@i915_module_load@reload.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-skl-iommu/igt@i915_module_load@reload.html
    - fi-hsw-4770r:       [PASS][7] -> [INCOMPLETE][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-hsw-4770r/igt@i915_module_load@reload.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-hsw-4770r/igt@i915_module_load@reload.html
    - fi-skl-6700k2:      [PASS][9] -> [INCOMPLETE][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-skl-6700k2/igt@i915_module_load@reload.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-skl-6700k2/igt@i915_module_load@reload.html
    - fi-bsw-kefka:       [PASS][11] -> [INCOMPLETE][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-bsw-kefka/igt@i915_module_load@reload.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-bsw-kefka/igt@i915_module_load@reload.html
    - fi-bdw-5557u:       [PASS][13] -> [INCOMPLETE][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-bdw-5557u/igt@i915_module_load@reload.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-bdw-5557u/igt@i915_module_load@reload.html
    - fi-skl-guc:         [PASS][15] -> [INCOMPLETE][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-skl-guc/igt@i915_module_load@reload.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-skl-guc/igt@i915_module_load@reload.html
    - fi-kbl-guc:         [PASS][17] -> [INCOMPLETE][18]
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-kbl-guc/igt@i915_module_load@reload.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-kbl-guc/igt@i915_module_load@reload.html
    - fi-cfl-8109u:       [PASS][19] -> [INCOMPLETE][20]
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-cfl-8109u/igt@i915_module_load@reload.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-cfl-8109u/igt@i915_module_load@reload.html
    - fi-kbl-7500u:       [PASS][21] -> [INCOMPLETE][22]
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-kbl-7500u/igt@i915_module_load@reload.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-kbl-7500u/igt@i915_module_load@reload.html
    - fi-cfl-8700k:       [PASS][23] -> [INCOMPLETE][24]
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-cfl-8700k/igt@i915_module_load@reload.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-cfl-8700k/igt@i915_module_load@reload.html
    - fi-snb-2520m:       [PASS][25] -> [INCOMPLETE][26]
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-snb-2520m/igt@i915_module_load@reload.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-snb-2520m/igt@i915_module_load@reload.html
    - fi-hsw-4770:        [PASS][27] -> [INCOMPLETE][28]
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-hsw-4770/igt@i915_module_load@reload.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-hsw-4770/igt@i915_module_load@reload.html
    - fi-cfl-guc:         [PASS][29] -> [INCOMPLETE][30]
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-cfl-guc/igt@i915_module_load@reload.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-cfl-guc/igt@i915_module_load@reload.html
    - fi-skl-6770hq:      [PASS][31] -> [INCOMPLETE][32]
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-skl-6770hq/igt@i915_module_load@reload.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-skl-6770hq/igt@i915_module_load@reload.html
    - fi-bsw-n3050:       [PASS][33] -> [INCOMPLETE][34]
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-bsw-n3050/igt@i915_module_load@reload.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-bsw-n3050/igt@i915_module_load@reload.html
    - fi-ilk-650:         [PASS][35] -> [INCOMPLETE][36]
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-ilk-650/igt@i915_module_load@reload.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-ilk-650/igt@i915_module_load@reload.html
    - fi-ivb-3770:        [PASS][37] -> [INCOMPLETE][38]
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-ivb-3770/igt@i915_module_load@reload.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-ivb-3770/igt@i915_module_load@reload.html
    - fi-skl-lmem:        NOTRUN -> [INCOMPLETE][39]
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-skl-lmem/igt@i915_module_load@reload.html
    - fi-hsw-peppy:       [PASS][40] -> [INCOMPLETE][41]
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-hsw-peppy/igt@i915_module_load@reload.html
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-hsw-peppy/igt@i915_module_load@reload.html
    - fi-skl-6260u:       [PASS][42] -> [INCOMPLETE][43]
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-skl-6260u/igt@i915_module_load@reload.html
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-skl-6260u/igt@i915_module_load@reload.html
    - fi-kbl-7567u:       [PASS][44] -> [INCOMPLETE][45]
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-kbl-7567u/igt@i915_module_load@reload.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-kbl-7567u/igt@i915_module_load@reload.html
    - fi-kbl-x1275:       [PASS][46] -> [INCOMPLETE][47]
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-kbl-x1275/igt@i915_module_load@reload.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-kbl-x1275/igt@i915_module_load@reload.html

  
#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@i915_module_load@reload:
    - {fi-cml-u}:         NOTRUN -> [INCOMPLETE][48]
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-cml-u/igt@i915_module_load@reload.html
    - {fi-cml-u2}:        [PASS][49] -> [INCOMPLETE][50]
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-cml-u2/igt@i915_module_load@reload.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-cml-u2/igt@i915_module_load@reload.html

  
Known issues
------------

  Here are the changes found in Patchwork_13034 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@i915_module_load@reload:
    - fi-byt-j1900:       [PASS][51] -> [INCOMPLETE][52] ([fdo#102657])
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-byt-j1900/igt@i915_module_load@reload.html
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-byt-j1900/igt@i915_module_load@reload.html
    - fi-skl-6600u:       [PASS][53] -> [INCOMPLETE][54] ([fdo#104108])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-skl-6600u/igt@i915_module_load@reload.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-skl-6600u/igt@i915_module_load@reload.html
    - fi-elk-e7500:       [PASS][55] -> [INCOMPLETE][56] ([fdo#103989])
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-elk-e7500/igt@i915_module_load@reload.html
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-elk-e7500/igt@i915_module_load@reload.html
    - fi-glk-dsi:         [PASS][57] -> [INCOMPLETE][58] ([fdo#103359] / [k.org#198133])
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-glk-dsi/igt@i915_module_load@reload.html
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-glk-dsi/igt@i915_module_load@reload.html
    - fi-bdw-gvtdvm:      [PASS][59] -> [INCOMPLETE][60] ([fdo#105600])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-bdw-gvtdvm/igt@i915_module_load@reload.html
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-bdw-gvtdvm/igt@i915_module_load@reload.html
    - fi-bxt-dsi:         [PASS][61] -> [INCOMPLETE][62] ([fdo#103927])
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-bxt-dsi/igt@i915_module_load@reload.html
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-bxt-dsi/igt@i915_module_load@reload.html
    - fi-skl-gvtdvm:      [PASS][63] -> [INCOMPLETE][64] ([fdo#105600])
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-skl-gvtdvm/igt@i915_module_load@reload.html
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-skl-gvtdvm/igt@i915_module_load@reload.html
    - fi-bxt-j4205:       [PASS][65] -> [INCOMPLETE][66] ([fdo#103927])
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-bxt-j4205/igt@i915_module_load@reload.html
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-bxt-j4205/igt@i915_module_load@reload.html
    - fi-byt-n2820:       [PASS][67] -> [INCOMPLETE][68] ([fdo#102657])
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-byt-n2820/igt@i915_module_load@reload.html
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-byt-n2820/igt@i915_module_load@reload.html
    - fi-snb-2600:        [PASS][69] -> [INCOMPLETE][70] ([fdo#105411])
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-snb-2600/igt@i915_module_load@reload.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-snb-2600/igt@i915_module_load@reload.html

  
#### Possible fixes ####

  * igt@gem_basic@bad-close:
    - fi-icl-u2:          [INCOMPLETE][71] ([fdo#107713]) -> [PASS][72]
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-icl-u2/igt@gem_basic@bad-close.html
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-icl-u2/igt@gem_basic@bad-close.html

  * igt@gem_cpu_reloc@basic:
    - {fi-icl-y}:         [INCOMPLETE][73] ([fdo#107713] / [fdo#110246]) -> [PASS][74]
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-icl-y/igt@gem_cpu_reloc@basic.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-icl-y/igt@gem_cpu_reloc@basic.html
    - {fi-icl-u3}:        [INCOMPLETE][75] ([fdo#107713] / [fdo#110246]) -> [PASS][76]
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-icl-u3/igt@gem_cpu_reloc@basic.html
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-icl-u3/igt@gem_cpu_reloc@basic.html

  * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
    - fi-blb-e6850:       [INCOMPLETE][77] ([fdo#107718]) -> [PASS][78]
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-blb-e6850/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-blb-e6850/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html

  
#### Warnings ####

  * igt@i915_selftest@live_hangcheck:
    - fi-apl-guc:         [INCOMPLETE][79] ([fdo#103927] / [fdo#110624]) -> [DMESG-FAIL][80] ([fdo#110620])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-apl-guc/igt@i915_selftest@live_hangcheck.html
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-apl-guc/igt@i915_selftest@live_hangcheck.html

  * igt@runner@aborted:
    - fi-apl-guc:         [FAIL][81] ([fdo#110624]) -> [FAIL][82] ([fdo#110622])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-apl-guc/igt@runner@aborted.html
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/fi-apl-guc/igt@runner@aborted.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#102657]: https://bugs.freedesktop.org/show_bug.cgi?id=102657
  [fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359
  [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
  [fdo#103989]: https://bugs.freedesktop.org/show_bug.cgi?id=103989
  [fdo#104108]: https://bugs.freedesktop.org/show_bug.cgi?id=104108
  [fdo#105411]: https://bugs.freedesktop.org/show_bug.cgi?id=105411
  [fdo#105600]: https://bugs.freedesktop.org/show_bug.cgi?id=105600
  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
  [fdo#110246]: https://bugs.freedesktop.org/show_bug.cgi?id=110246
  [fdo#110620]: https://bugs.freedesktop.org/show_bug.cgi?id=110620
  [fdo#110622]: https://bugs.freedesktop.org/show_bug.cgi?id=110622
  [fdo#110624]: https://bugs.freedesktop.org/show_bug.cgi?id=110624
  [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133


Participating hosts (51 -> 46)
------------------------------

  Additional (2): fi-skl-lmem fi-cml-u 
  Missing    (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus 


Build changes
-------------

  * Linux: CI_DRM_6096 -> Patchwork_13034

  CI_DRM_6096: beb32d3348a566a6aafa292c65e2d60a610479c4 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4996: 6fe5d254ec1b9b47d61408e1b49a7339876bf1e7 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_13034: fcb80accf17dbeb1cdea02a4f869addbddebc210 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

fcb80accf17d drm/i915: added i2c symlink to hdmi connector

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13034/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] drm/i915: added i2c symlink to hdmi connector
  2019-05-17 16:21 [PATCH] drm/i915: added i2c symlink to hdmi connector Oleg Vasilev
  2019-05-17 16:36 ` Ville Syrjälä
  2019-05-17 17:36 ` ✗ Fi.CI.BAT: failure for " Patchwork
@ 2019-05-20  7:37 ` Jani Nikula
  2019-05-20 10:22 ` [PATCH v2] drm/i915: add i2c symlink under " Oleg Vasilev
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Jani Nikula @ 2019-05-20  7:37 UTC (permalink / raw)
  To: Oleg Vasilev, intel-gfx

On Fri, 17 May 2019, Oleg Vasilev <oleg.vasilev@intel.com> wrote:
> Currently, the i2c adapter was available only under DP connectors.

Currently ... is?

> This patch adds i2c adapter symlink to hdmi connector in order to make
> this behaviour consistent.

Please don't refer to "this patch" in commit messages. Please use
imperative style, here as well as in the subject:

"drm/i915: add i2c symlink to hdmi connector"

"Add i2c adapter symlink to hdmi connector in order to make this
behaviour consistent."

I understand what you mean, but "add i2c symlink to hdmi connector"
could be read as having a symlink point at the connector. Perhaps, "Add
symlink from hdmi connector to i2c adapter 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>

It's probably more common to add Cc's before the Signed-off-by.

> ---
>  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);

        struct drm_i915_private *dev_priv = to_i915(connector->dev);
	struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector);

> +
> +	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);

Please keep declarations and initialization separate for all non-trivial
initialization.

> +
> +	WARN(ret != 0, "Failed to create i2c symlink\n");

sysfs_create_link already warns when -EEXIST, and anyway I think a WARN
is a bit much. DRM_ERROR perhaps.

> +}
> +
> +static void intel_hdmi_delete_i2c_symlink(struct drm_connector *connector)

Perhaps follow sysfs_remove_link naming? I.e. remove instead of delete.

> +{
> +	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);

What Ville said.


BR,
Jani.

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

-- 
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2] drm/i915: add i2c symlink under hdmi connector
  2019-05-17 16:21 [PATCH] drm/i915: added i2c symlink to hdmi connector Oleg Vasilev
                   ` (2 preceding siblings ...)
  2019-05-20  7:37 ` [PATCH] " Jani Nikula
@ 2019-05-20 10:22 ` 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
  5 siblings, 0 replies; 7+ messages in thread
From: Oleg Vasilev @ 2019-05-20 10:22 UTC (permalink / raw)
  To: intel-gfx; +Cc: Jani Nikula

Currently, the i2c adapter is available only under DP connectors.

Add i2c symlink under hdmi connector pointing to i2c adapter in order to
make this behaviour consistent.

The initial motivation was to make igt i2c subtest
patch [1] work on all connectors.

[1]: https://patchwork.freedesktop.org/series/60357/

v2:
- Moved symlink remove to unregister (Ville)
- Clarified commit message (Jani)
- Changed WARN to DRM_ERROR (Jani)
- Minor codestyle changes proposed by Jani

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>
Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com>
---
 drivers/gpu/drm/i915/intel_hdmi.c | 40 ++++++++++++++++++++++++++++++-
 1 file changed, 39 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
index 2a4086cf2692..fd383de531b4 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -2658,6 +2658,35 @@ 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 drm_i915_private *dev_priv = to_i915(connector->dev);
+	struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector);
+	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;
+
+	ret = sysfs_create_link(connector_kobj, i2c_kobj, i2c_kobj->name);
+	if (ret)
+		DRM_ERROR("Failed to create i2c symlink (%d)\n", ret);
+}
+
+static void intel_hdmi_remove_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,6 +2698,8 @@ intel_hdmi_connector_register(struct drm_connector *connector)
 
 	i915_debugfs_connector_add(connector);
 
+	intel_hdmi_create_i2c_symlink(connector);
+
 	return ret;
 }
 
@@ -2680,6 +2711,13 @@ static void intel_hdmi_destroy(struct drm_connector *connector)
 	intel_connector_destroy(connector);
 }
 
+static void intel_hdmi_connector_unregister(struct drm_connector *connector)
+{
+	intel_hdmi_remove_i2c_symlink(connector);
+
+	intel_connector_unregister(connector);
+}
+
 static const struct drm_connector_funcs intel_hdmi_connector_funcs = {
 	.detect = intel_hdmi_detect,
 	.force = intel_hdmi_force,
@@ -2687,7 +2725,7 @@ static const struct drm_connector_funcs intel_hdmi_connector_funcs = {
 	.atomic_get_property = intel_digital_connector_atomic_get_property,
 	.atomic_set_property = intel_digital_connector_atomic_set_property,
 	.late_register = intel_hdmi_connector_register,
-	.early_unregister = intel_connector_unregister,
+	.early_unregister = intel_hdmi_connector_unregister,
 	.destroy = intel_hdmi_destroy,
 	.atomic_destroy_state = drm_atomic_helper_connector_destroy_state,
 	.atomic_duplicate_state = intel_digital_connector_duplicate_state,
-- 
2.21.0

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

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* ✗ Fi.CI.CHECKPATCH: warning for drm/i915: added i2c symlink to hdmi connector (rev2)
  2019-05-17 16:21 [PATCH] drm/i915: added i2c symlink to hdmi connector Oleg Vasilev
                   ` (3 preceding siblings ...)
  2019-05-20 10:22 ` [PATCH v2] drm/i915: add i2c symlink under " Oleg Vasilev
@ 2019-05-20 14:19 ` Patchwork
  2019-05-20 14:57 ` ✓ Fi.CI.BAT: success " Patchwork
  5 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2019-05-20 14:19 UTC (permalink / raw)
  To: Oleg Vasilev; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: added i2c symlink to hdmi connector (rev2)
URL   : https://patchwork.freedesktop.org/series/60794/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
7cf050cd9642 drm/i915: add i2c symlink under hdmi connector
-:44: WARNING:LINE_SPACING: Missing a blank line after declarations
#44: FILE: drivers/gpu/drm/i915/intel_hdmi.c:2656:
+	struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector);
+	return intel_gmbus_get_adapter(dev_priv, intel_hdmi->ddc_bus);

total: 0 errors, 1 warnings, 0 checks, 64 lines checked

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* ✓ Fi.CI.BAT: success for drm/i915: added i2c symlink to hdmi connector (rev2)
  2019-05-17 16:21 [PATCH] drm/i915: added i2c symlink to hdmi connector Oleg Vasilev
                   ` (4 preceding siblings ...)
  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 ` Patchwork
  5 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2019-05-20 14:57 UTC (permalink / raw)
  To: Oleg Vasilev; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: added i2c symlink to hdmi connector (rev2)
URL   : https://patchwork.freedesktop.org/series/60794/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6101 -> Patchwork_13046
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13046/

Known issues
------------

  Here are the changes found in Patchwork_13046 that come from known issues:

### IGT changes ###

#### Possible fixes ####

  * igt@gem_exec_create@basic:
    - {fi-icl-y}:         [INCOMPLETE][1] ([fdo#107713]) -> [PASS][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6101/fi-icl-y/igt@gem_exec_create@basic.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13046/fi-icl-y/igt@gem_exec_create@basic.html

  * igt@i915_pm_rpm@module-reload:
    - fi-skl-6770hq:      [FAIL][3] ([fdo#108511]) -> [PASS][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6101/fi-skl-6770hq/igt@i915_pm_rpm@module-reload.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13046/fi-skl-6770hq/igt@i915_pm_rpm@module-reload.html

  * igt@i915_selftest@live_contexts:
    - fi-bdw-gvtdvm:      [DMESG-FAIL][5] ([fdo#110235]) -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6101/fi-bdw-gvtdvm/igt@i915_selftest@live_contexts.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13046/fi-bdw-gvtdvm/igt@i915_selftest@live_contexts.html

  * igt@i915_selftest@live_objects:
    - fi-pnv-d510:        [INCOMPLETE][7] -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6101/fi-pnv-d510/igt@i915_selftest@live_objects.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13046/fi-pnv-d510/igt@i915_selftest@live_objects.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#108511]: https://bugs.freedesktop.org/show_bug.cgi?id=108511
  [fdo#110235]: https://bugs.freedesktop.org/show_bug.cgi?id=110235


Participating hosts (51 -> 45)
------------------------------

  Missing    (6): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-byt-clapper 


Build changes
-------------

  * Linux: CI_DRM_6101 -> Patchwork_13046

  CI_DRM_6101: 64e63de5aac6ad2d47714d9e39c9ea7625a3242d @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4997: eff5d0db3248734845b78fcc2e2772dd4012e5af @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_13046: 7cf050cd9642149101bf1f68a1b674d7fdefb1e4 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

7cf050cd9642 drm/i915: add i2c symlink under hdmi connector

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13046/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-05-20 14:57 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-17 16:21 [PATCH] drm/i915: added i2c symlink to hdmi connector Oleg Vasilev
2019-05-17 16:36 ` Ville Syrjälä
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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).