* [PATCH v5 0/4] Enabling the IGT for HDCP1.4 @ 2018-10-23 9:22 Ramalingam C 2018-10-23 9:22 ` [PATCH v5 1/4] drm/i915: Pullout the bksv read and validation Ramalingam C ` (8 more replies) 0 siblings, 9 replies; 14+ messages in thread From: Ramalingam C @ 2018-10-23 9:22 UTC (permalink / raw) To: intel-gfx, daniel.vetter Adding a debugfs entry for detecting the valid HDCP sinks to perform kms_content_protection. In case of dummy HDMI/DP sinks(EDID whisperers without any parsers) IGT will skip the HDCP test on that connector instead of failing it. Hence false alarm are avoided. For serving above purpose this series has pulled out few changes from "Implement HDCP2.2" series under review at https://patchwork.freedesktop.org/series/38254/ "drm/i915: hdcp_check_link only on CP_IRQ" is just a improvement patch for HDCP1.4. Already received the reviewed-by from Sean Paul. v5: DDC/AUX failures are presented as debug logs instead of errors. [Daniel] Ramalingam C (4): drm/i915: Pullout the bksv read and validation drm/i915: hdcp_check_link only on CP_IRQ drm/i915/debugfs: hdcp capability of a sink drm/i915: Move the DDC/AUX failure msgs to debug log drivers/gpu/drm/i915/i915_debugfs.c | 29 ++++++++++++ drivers/gpu/drm/i915/intel_dp.c | 35 ++++++++------- drivers/gpu/drm/i915/intel_drv.h | 7 +++ drivers/gpu/drm/i915/intel_hdcp.c | 89 ++++++++++++++++++++++++------------- drivers/gpu/drm/i915/intel_hdmi.c | 34 +++++++++----- 5 files changed, 137 insertions(+), 57 deletions(-) -- 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH v5 1/4] drm/i915: Pullout the bksv read and validation 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C @ 2018-10-23 9:22 ` Ramalingam C 2018-10-23 9:22 ` [PATCH v5 2/4] drm/i915: hdcp_check_link only on CP_IRQ Ramalingam C ` (7 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Ramalingam C @ 2018-10-23 9:22 UTC (permalink / raw) To: intel-gfx, daniel.vetter For reusability purpose, this patch implements the hdcp1.4 bksv's read and validation as a functions. For detecting the HDMI panel's HDCP capability this fucntions will be used. v2: Rebased. v3: No Changes. v4: inline tag is removed with modified error msg. v5: No Changes. v6: No Changes. v7: Realigned the code. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Sean Paul <seanpaul@chromium.org> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> --- drivers/gpu/drm/i915/intel_hdcp.c | 62 ++++++++++++++++++++++++--------------- 1 file changed, 38 insertions(+), 24 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_hdcp.c b/drivers/gpu/drm/i915/intel_hdcp.c index 26e48fc95543..20908ff018e6 100644 --- a/drivers/gpu/drm/i915/intel_hdcp.c +++ b/drivers/gpu/drm/i915/intel_hdcp.c @@ -16,6 +16,41 @@ #define KEY_LOAD_TRIES 5 +static +bool intel_hdcp_is_ksv_valid(u8 *ksv) +{ + int i, ones = 0; + /* KSV has 20 1's and 20 0's */ + for (i = 0; i < DRM_HDCP_KSV_LEN; i++) + ones += hweight8(ksv[i]); + if (ones != 20) + return false; + + return true; +} + +static +int intel_hdcp_read_valid_bksv(struct intel_digital_port *intel_dig_port, + const struct intel_hdcp_shim *shim, u8 *bksv) +{ + int ret, i, tries = 2; + + /* HDCP spec states that we must retry the bksv if it is invalid */ + for (i = 0; i < tries; i++) { + ret = shim->read_bksv(intel_dig_port, bksv); + if (ret) + return ret; + if (intel_hdcp_is_ksv_valid(bksv)) + break; + } + if (i == tries) { + DRM_ERROR("Bksv is invalid\n"); + return -ENODEV; + } + + return 0; +} + static int intel_hdcp_poll_ksv_fifo(struct intel_digital_port *intel_dig_port, const struct intel_hdcp_shim *shim) { @@ -168,18 +203,6 @@ u32 intel_hdcp_get_repeater_ctl(struct intel_digital_port *intel_dig_port) } static -bool intel_hdcp_is_ksv_valid(u8 *ksv) -{ - int i, ones = 0; - /* KSV has 20 1's and 20 0's */ - for (i = 0; i < DRM_HDCP_KSV_LEN; i++) - ones += hweight8(ksv[i]); - if (ones != 20) - return false; - return true; -} - -static int intel_hdcp_validate_v_prime(struct intel_digital_port *intel_dig_port, const struct intel_hdcp_shim *shim, u8 *ksv_fifo, u8 num_downstream, u8 *bstatus) @@ -527,18 +550,9 @@ static int intel_hdcp_auth(struct intel_digital_port *intel_dig_port, memset(&bksv, 0, sizeof(bksv)); - /* HDCP spec states that we must retry the bksv if it is invalid */ - for (i = 0; i < tries; i++) { - ret = shim->read_bksv(intel_dig_port, bksv.shim); - if (ret) - return ret; - if (intel_hdcp_is_ksv_valid(bksv.shim)) - break; - } - if (i == tries) { - DRM_ERROR("HDCP failed, Bksv is invalid\n"); - return -ENODEV; - } + ret = intel_hdcp_read_valid_bksv(intel_dig_port, shim, bksv.shim); + if (ret < 0) + return ret; I915_WRITE(PORT_HDCP_BKSVLO(port), bksv.reg[0]); I915_WRITE(PORT_HDCP_BKSVHI(port), bksv.reg[1]); -- 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v5 2/4] drm/i915: hdcp_check_link only on CP_IRQ 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C 2018-10-23 9:22 ` [PATCH v5 1/4] drm/i915: Pullout the bksv read and validation Ramalingam C @ 2018-10-23 9:22 ` Ramalingam C 2018-10-23 9:22 ` [PATCH v5 3/4] drm/i915/debugfs: hdcp capability of a sink Ramalingam C ` (6 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Ramalingam C @ 2018-10-23 9:22 UTC (permalink / raw) To: intel-gfx, daniel.vetter; +Cc: Sean Paul HDCP check link is invoked only on CP_IRQ detection, instead of all short pulses. v3: No Changes. v4: Added sean in cc and collected the reviewed-by received. v5: No Change. v6: No Change. v7: No Change. v8: Rebased. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> cc: Sean Paul <seanpaul@chromium.org> Reviewed-by: Uma Shankar <uma.shankar@intel.com> Reviewed-by: Sean Paul <seanpaul@chromium.org> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> --- drivers/gpu/drm/i915/intel_dp.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 1f098e509143..27377bf8105c 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c @@ -4530,8 +4530,11 @@ static void intel_dp_check_service_irq(struct intel_dp *intel_dp) if (val & DP_AUTOMATED_TEST_REQUEST) intel_dp_handle_test_request(intel_dp); - if (val & (DP_CP_IRQ | DP_SINK_SPECIFIC_IRQ)) - DRM_DEBUG_DRIVER("CP or sink specific irq unhandled\n"); + if (val & DP_CP_IRQ) + intel_hdcp_check_link(intel_dp->attached_connector); + + if (val & DP_SINK_SPECIFIC_IRQ) + DRM_DEBUG_DRIVER("Sink specific irq unhandled\n"); } /* @@ -5694,9 +5697,6 @@ intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd) handled = intel_dp_short_pulse(intel_dp); - /* Short pulse can signify loss of hdcp authentication */ - intel_hdcp_check_link(intel_dp->attached_connector); - if (!handled) goto put_power; } -- 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v5 3/4] drm/i915/debugfs: hdcp capability of a sink 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C 2018-10-23 9:22 ` [PATCH v5 1/4] drm/i915: Pullout the bksv read and validation Ramalingam C 2018-10-23 9:22 ` [PATCH v5 2/4] drm/i915: hdcp_check_link only on CP_IRQ Ramalingam C @ 2018-10-23 9:22 ` Ramalingam C 2018-10-23 14:04 ` Daniel Vetter 2018-10-23 9:22 ` [PATCH v5 4/4] drm/i915: Move the DDC/AUX failure msgs to debug log Ramalingam C ` (5 subsequent siblings) 8 siblings, 1 reply; 14+ messages in thread From: Ramalingam C @ 2018-10-23 9:22 UTC (permalink / raw) To: intel-gfx, daniel.vetter Add a debugfs entry for providing the hdcp capabilities of the sink connected to the HDCP capable connectors. v2: Squashed the sink's hdcp capability into this patch. [Daniel] Signed-off-by: Ramalingam C <ramalingam.c@intel.com> --- drivers/gpu/drm/i915/i915_debugfs.c | 29 +++++++++++++++++++++++++++++ drivers/gpu/drm/i915/intel_drv.h | 7 +++++++ drivers/gpu/drm/i915/intel_hdcp.c | 27 +++++++++++++++++++++------ drivers/gpu/drm/i915/intel_hdmi.c | 16 +++++++++++++++- 4 files changed, 72 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index 5f3c639522fa..6d09af66da0f 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c @@ -4946,6 +4946,28 @@ static int i915_panel_show(struct seq_file *m, void *data) } DEFINE_SHOW_ATTRIBUTE(i915_panel); +static int i915_hdcp_sink_capability_show(struct seq_file *m, void *data) +{ + struct drm_connector *connector = m->private; + struct intel_connector *intel_connector = to_intel_connector(connector); + + if (connector->status != connector_status_connected) + return -ENODEV; + + /* HDCP is supported by connector */ + if (!intel_connector->hdcp_shim) + return -EINVAL; + + seq_printf(m, "%s:%d HDCP version: ", connector->name, + connector->base.id); + seq_printf(m, "%s ", !intel_hdcp_capable(intel_connector) ? + "None" : "HDCP1.4"); + seq_puts(m, "\n"); + + return 0; +} +DEFINE_SHOW_ATTRIBUTE(i915_hdcp_sink_capability); + /** * i915_debugfs_connector_add - add i915 specific connector debugfs files * @connector: pointer to a registered drm_connector @@ -4975,5 +4997,12 @@ int i915_debugfs_connector_add(struct drm_connector *connector) connector, &i915_psr_sink_status_fops); } + if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort || + connector->connector_type == DRM_MODE_CONNECTOR_HDMIA || + connector->connector_type == DRM_MODE_CONNECTOR_HDMIB) { + debugfs_create_file("i915_hdcp_sink_capability", S_IRUGO, root, + connector, &i915_hdcp_sink_capability_fops); + } + return 0; } diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h index b2ca9f278b36..249bb9d1b5d0 100644 --- a/drivers/gpu/drm/i915/intel_drv.h +++ b/drivers/gpu/drm/i915/intel_drv.h @@ -1296,6 +1296,12 @@ enc_to_dig_port(struct drm_encoder *encoder) return NULL; } +static inline struct intel_digital_port * +conn_to_dig_port(struct intel_connector *connector) +{ + return enc_to_dig_port(&intel_attached_encoder(&connector->base)->base); +} + static inline struct intel_dp_mst_encoder * enc_to_mst(struct drm_encoder *encoder) { @@ -1956,6 +1962,7 @@ int intel_hdcp_enable(struct intel_connector *connector); int intel_hdcp_disable(struct intel_connector *connector); int intel_hdcp_check_link(struct intel_connector *connector); bool is_hdcp_supported(struct drm_i915_private *dev_priv, enum port port); +bool intel_hdcp_capable(struct intel_connector *connector); /* intel_psr.c */ #define CAN_PSR(dev_priv) (HAS_PSR(dev_priv) && dev_priv->psr.sink_support) diff --git a/drivers/gpu/drm/i915/intel_hdcp.c b/drivers/gpu/drm/i915/intel_hdcp.c index 20908ff018e6..283b45636668 100644 --- a/drivers/gpu/drm/i915/intel_hdcp.c +++ b/drivers/gpu/drm/i915/intel_hdcp.c @@ -51,6 +51,27 @@ int intel_hdcp_read_valid_bksv(struct intel_digital_port *intel_dig_port, return 0; } +/* Is HDCP1.4 capable on Platform and Sink */ +bool intel_hdcp_capable(struct intel_connector *connector) +{ + struct intel_digital_port *intel_dig_port = conn_to_dig_port(connector); + const struct intel_hdcp_shim *shim = connector->hdcp_shim; + bool capable = false; + u8 bksv[5]; + + if (!shim) + return capable; + + if (shim->hdcp_capable) { + shim->hdcp_capable(intel_dig_port, &capable); + } else { + if (!intel_hdcp_read_valid_bksv(intel_dig_port, shim, bksv)) + capable = true; + } + + return capable; +} + static int intel_hdcp_poll_ksv_fifo(struct intel_digital_port *intel_dig_port, const struct intel_hdcp_shim *shim) { @@ -632,12 +653,6 @@ static int intel_hdcp_auth(struct intel_digital_port *intel_dig_port, return 0; } -static -struct intel_digital_port *conn_to_dig_port(struct intel_connector *connector) -{ - return enc_to_dig_port(&intel_attached_encoder(&connector->base)->base); -} - static int _intel_hdcp_disable(struct intel_connector *connector) { struct drm_i915_private *dev_priv = connector->base.dev->dev_private; diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c index 89d5e3984452..72e8a73dfa1c 100644 --- a/drivers/gpu/drm/i915/intel_hdmi.c +++ b/drivers/gpu/drm/i915/intel_hdmi.c @@ -2072,6 +2072,20 @@ static void chv_hdmi_pre_enable(struct intel_encoder *encoder, chv_phy_release_cl2_override(encoder); } +static int +intel_hdmi_connector_register(struct drm_connector *connector) +{ + int ret; + + ret = intel_connector_register(connector); + if (ret) + return ret; + + i915_debugfs_connector_add(connector); + + return ret; +} + static void intel_hdmi_destroy(struct drm_connector *connector) { if (intel_attached_hdmi(connector)->cec_notifier) @@ -2086,7 +2100,7 @@ static const struct drm_connector_funcs intel_hdmi_connector_funcs = { .fill_modes = drm_helper_probe_single_connector_modes, .atomic_get_property = intel_digital_connector_atomic_get_property, .atomic_set_property = intel_digital_connector_atomic_set_property, - .late_register = intel_connector_register, + .late_register = intel_hdmi_connector_register, .early_unregister = intel_connector_unregister, .destroy = intel_hdmi_destroy, .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, -- 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH v5 3/4] drm/i915/debugfs: hdcp capability of a sink 2018-10-23 9:22 ` [PATCH v5 3/4] drm/i915/debugfs: hdcp capability of a sink Ramalingam C @ 2018-10-23 14:04 ` Daniel Vetter 0 siblings, 0 replies; 14+ messages in thread From: Daniel Vetter @ 2018-10-23 14:04 UTC (permalink / raw) To: Ramalingam C; +Cc: daniel.vetter, intel-gfx On Tue, Oct 23, 2018 at 02:52:29PM +0530, Ramalingam C wrote: > Add a debugfs entry for providing the hdcp capabilities of the sink > connected to the HDCP capable connectors. > > v2: > Squashed the sink's hdcp capability into this patch. [Daniel] > > Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Yeah lgtm. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > drivers/gpu/drm/i915/i915_debugfs.c | 29 +++++++++++++++++++++++++++++ > drivers/gpu/drm/i915/intel_drv.h | 7 +++++++ > drivers/gpu/drm/i915/intel_hdcp.c | 27 +++++++++++++++++++++------ > drivers/gpu/drm/i915/intel_hdmi.c | 16 +++++++++++++++- > 4 files changed, 72 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c > index 5f3c639522fa..6d09af66da0f 100644 > --- a/drivers/gpu/drm/i915/i915_debugfs.c > +++ b/drivers/gpu/drm/i915/i915_debugfs.c > @@ -4946,6 +4946,28 @@ static int i915_panel_show(struct seq_file *m, void *data) > } > DEFINE_SHOW_ATTRIBUTE(i915_panel); > > +static int i915_hdcp_sink_capability_show(struct seq_file *m, void *data) > +{ > + struct drm_connector *connector = m->private; > + struct intel_connector *intel_connector = to_intel_connector(connector); > + > + if (connector->status != connector_status_connected) > + return -ENODEV; > + > + /* HDCP is supported by connector */ > + if (!intel_connector->hdcp_shim) > + return -EINVAL; > + > + seq_printf(m, "%s:%d HDCP version: ", connector->name, > + connector->base.id); > + seq_printf(m, "%s ", !intel_hdcp_capable(intel_connector) ? > + "None" : "HDCP1.4"); > + seq_puts(m, "\n"); > + > + return 0; > +} > +DEFINE_SHOW_ATTRIBUTE(i915_hdcp_sink_capability); > + > /** > * i915_debugfs_connector_add - add i915 specific connector debugfs files > * @connector: pointer to a registered drm_connector > @@ -4975,5 +4997,12 @@ int i915_debugfs_connector_add(struct drm_connector *connector) > connector, &i915_psr_sink_status_fops); > } > > + if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort || > + connector->connector_type == DRM_MODE_CONNECTOR_HDMIA || > + connector->connector_type == DRM_MODE_CONNECTOR_HDMIB) { > + debugfs_create_file("i915_hdcp_sink_capability", S_IRUGO, root, > + connector, &i915_hdcp_sink_capability_fops); > + } > + > return 0; > } > diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h > index b2ca9f278b36..249bb9d1b5d0 100644 > --- a/drivers/gpu/drm/i915/intel_drv.h > +++ b/drivers/gpu/drm/i915/intel_drv.h > @@ -1296,6 +1296,12 @@ enc_to_dig_port(struct drm_encoder *encoder) > return NULL; > } > > +static inline struct intel_digital_port * > +conn_to_dig_port(struct intel_connector *connector) > +{ > + return enc_to_dig_port(&intel_attached_encoder(&connector->base)->base); > +} > + > static inline struct intel_dp_mst_encoder * > enc_to_mst(struct drm_encoder *encoder) > { > @@ -1956,6 +1962,7 @@ int intel_hdcp_enable(struct intel_connector *connector); > int intel_hdcp_disable(struct intel_connector *connector); > int intel_hdcp_check_link(struct intel_connector *connector); > bool is_hdcp_supported(struct drm_i915_private *dev_priv, enum port port); > +bool intel_hdcp_capable(struct intel_connector *connector); > > /* intel_psr.c */ > #define CAN_PSR(dev_priv) (HAS_PSR(dev_priv) && dev_priv->psr.sink_support) > diff --git a/drivers/gpu/drm/i915/intel_hdcp.c b/drivers/gpu/drm/i915/intel_hdcp.c > index 20908ff018e6..283b45636668 100644 > --- a/drivers/gpu/drm/i915/intel_hdcp.c > +++ b/drivers/gpu/drm/i915/intel_hdcp.c > @@ -51,6 +51,27 @@ int intel_hdcp_read_valid_bksv(struct intel_digital_port *intel_dig_port, > return 0; > } > > +/* Is HDCP1.4 capable on Platform and Sink */ > +bool intel_hdcp_capable(struct intel_connector *connector) > +{ > + struct intel_digital_port *intel_dig_port = conn_to_dig_port(connector); > + const struct intel_hdcp_shim *shim = connector->hdcp_shim; > + bool capable = false; > + u8 bksv[5]; > + > + if (!shim) > + return capable; > + > + if (shim->hdcp_capable) { > + shim->hdcp_capable(intel_dig_port, &capable); > + } else { > + if (!intel_hdcp_read_valid_bksv(intel_dig_port, shim, bksv)) > + capable = true; > + } > + > + return capable; > +} > + > static int intel_hdcp_poll_ksv_fifo(struct intel_digital_port *intel_dig_port, > const struct intel_hdcp_shim *shim) > { > @@ -632,12 +653,6 @@ static int intel_hdcp_auth(struct intel_digital_port *intel_dig_port, > return 0; > } > > -static > -struct intel_digital_port *conn_to_dig_port(struct intel_connector *connector) > -{ > - return enc_to_dig_port(&intel_attached_encoder(&connector->base)->base); > -} > - > static int _intel_hdcp_disable(struct intel_connector *connector) > { > struct drm_i915_private *dev_priv = connector->base.dev->dev_private; > diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c > index 89d5e3984452..72e8a73dfa1c 100644 > --- a/drivers/gpu/drm/i915/intel_hdmi.c > +++ b/drivers/gpu/drm/i915/intel_hdmi.c > @@ -2072,6 +2072,20 @@ static void chv_hdmi_pre_enable(struct intel_encoder *encoder, > chv_phy_release_cl2_override(encoder); > } > > +static int > +intel_hdmi_connector_register(struct drm_connector *connector) > +{ > + int ret; > + > + ret = intel_connector_register(connector); > + if (ret) > + return ret; > + > + i915_debugfs_connector_add(connector); > + > + return ret; > +} > + > static void intel_hdmi_destroy(struct drm_connector *connector) > { > if (intel_attached_hdmi(connector)->cec_notifier) > @@ -2086,7 +2100,7 @@ static const struct drm_connector_funcs intel_hdmi_connector_funcs = { > .fill_modes = drm_helper_probe_single_connector_modes, > .atomic_get_property = intel_digital_connector_atomic_get_property, > .atomic_set_property = intel_digital_connector_atomic_set_property, > - .late_register = intel_connector_register, > + .late_register = intel_hdmi_connector_register, > .early_unregister = intel_connector_unregister, > .destroy = intel_hdmi_destroy, > .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, > -- > 2.7.4 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH v5 4/4] drm/i915: Move the DDC/AUX failure msgs to debug log 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C ` (2 preceding siblings ...) 2018-10-23 9:22 ` [PATCH v5 3/4] drm/i915/debugfs: hdcp capability of a sink Ramalingam C @ 2018-10-23 9:22 ` Ramalingam C 2018-10-23 10:41 ` [PATCH v6] " Ramalingam C 2018-10-23 9:37 ` ✗ Fi.CI.CHECKPATCH: warning for Enabling the IGT for HDCP1.4 (rev5) Patchwork ` (4 subsequent siblings) 8 siblings, 1 reply; 14+ messages in thread From: Ramalingam C @ 2018-10-23 9:22 UTC (permalink / raw) To: intel-gfx, daniel.vetter When a HDCP authentication is in progress, if the display sink is hot unplugged, all DDC/AUX transaction related to the HDCP authentication will fail. This patch moves those kind of HDCP DDC/AUX failures into the debug logs instead of errors. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> --- drivers/gpu/drm/i915/intel_dp.c | 25 +++++++++++++------------ drivers/gpu/drm/i915/intel_hdmi.c | 18 +++++++++--------- 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 27377bf8105c..ac13aa3cef91 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c @@ -5347,7 +5347,8 @@ int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, dpcd_ret = drm_dp_dpcd_write(&intel_dig_port->dp.aux, DP_AUX_HDCP_AN, an, DRM_HDCP_AN_LEN); if (dpcd_ret != DRM_HDCP_AN_LEN) { - DRM_ERROR("Failed to write An over DP/AUX (%zd)\n", dpcd_ret); + DRM_DEBUG_KMS("Failed to write An over DP/AUX (%zd)\n", + dpcd_ret); return dpcd_ret >= 0 ? -EIO : dpcd_ret; } @@ -5363,10 +5364,10 @@ int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, rxbuf, sizeof(rxbuf), DP_AUX_CH_CTL_AUX_AKSV_SELECT); if (ret < 0) { - DRM_ERROR("Write Aksv over DP/AUX failed (%d)\n", ret); + DRM_DEBUG_KMS("Write Aksv over DP/AUX failed (%d)\n", ret); return ret; } else if (ret == 0) { - DRM_ERROR("Aksv write over DP/AUX was empty\n"); + DRM_DEBUG_KMS("Aksv write over DP/AUX was empty\n"); return -EIO; } @@ -5381,7 +5382,7 @@ static int intel_dp_hdcp_read_bksv(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BKSV, bksv, DRM_HDCP_KSV_LEN); if (ret != DRM_HDCP_KSV_LEN) { - DRM_ERROR("Read Bksv from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read Bksv from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } return 0; @@ -5399,7 +5400,7 @@ static int intel_dp_hdcp_read_bstatus(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BINFO, bstatus, DRM_HDCP_BSTATUS_LEN); if (ret != DRM_HDCP_BSTATUS_LEN) { - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } return 0; @@ -5414,7 +5415,7 @@ int intel_dp_hdcp_read_bcaps(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BCAPS, bcaps, 1); if (ret != 1) { - DRM_ERROR("Read bcaps from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read bcaps from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } @@ -5444,7 +5445,7 @@ int intel_dp_hdcp_read_ri_prime(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_RI_PRIME, ri_prime, DRM_HDCP_RI_LEN); if (ret != DRM_HDCP_RI_LEN) { - DRM_ERROR("Read Ri' from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read Ri' from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } return 0; @@ -5459,7 +5460,7 @@ int intel_dp_hdcp_read_ksv_ready(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BSTATUS, &bstatus, 1); if (ret != 1) { - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } *ksv_ready = bstatus & DP_BSTATUS_READY; @@ -5481,8 +5482,8 @@ int intel_dp_hdcp_read_ksv_fifo(struct intel_digital_port *intel_dig_port, ksv_fifo + i * DRM_HDCP_KSV_LEN, len); if (ret != len) { - DRM_ERROR("Read ksv[%d] from DP/AUX failed (%zd)\n", i, - ret); + DRM_DEBUG_KMS("Read ksv[%d] from DP/AUX failed (%zd)\n", + i, ret); return ret >= 0 ? -EIO : ret; } } @@ -5502,7 +5503,7 @@ int intel_dp_hdcp_read_v_prime_part(struct intel_digital_port *intel_dig_port, DP_AUX_HDCP_V_PRIME(i), part, DRM_HDCP_V_PRIME_PART_LEN); if (ret != DRM_HDCP_V_PRIME_PART_LEN) { - DRM_ERROR("Read v'[%d] from DP/AUX failed (%zd)\n", i, ret); + DRM_DEBUG_KMS("Read v'[%d] from DP/AUX failed (%zd)\n", i, ret); return ret >= 0 ? -EIO : ret; } return 0; @@ -5525,7 +5526,7 @@ bool intel_dp_hdcp_check_link(struct intel_digital_port *intel_dig_port) ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BSTATUS, &bstatus, 1); if (ret != 1) { - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); return false; } diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c index 72e8a73dfa1c..d3e653640ce7 100644 --- a/drivers/gpu/drm/i915/intel_hdmi.c +++ b/drivers/gpu/drm/i915/intel_hdmi.c @@ -961,13 +961,13 @@ int intel_hdmi_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_write(intel_dig_port, DRM_HDCP_DDC_AN, an, DRM_HDCP_AN_LEN); if (ret) { - DRM_ERROR("Write An over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Write An over DDC failed (%d)\n", ret); return ret; } ret = intel_gmbus_output_aksv(adapter); if (ret < 0) { - DRM_ERROR("Failed to output aksv (%d)\n", ret); + DRM_DEBUG_KMS("Failed to output aksv (%d)\n", ret); return ret; } return 0; @@ -980,7 +980,7 @@ static int intel_hdmi_hdcp_read_bksv(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BKSV, bksv, DRM_HDCP_KSV_LEN); if (ret) - DRM_ERROR("Read Bksv over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read Bksv over DDC failed (%d)\n", ret); return ret; } @@ -992,7 +992,7 @@ int intel_hdmi_hdcp_read_bstatus(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BSTATUS, bstatus, DRM_HDCP_BSTATUS_LEN); if (ret) - DRM_ERROR("Read bstatus over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read bstatus over DDC failed (%d)\n", ret); return ret; } @@ -1005,7 +1005,7 @@ int intel_hdmi_hdcp_repeater_present(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); if (ret) { - DRM_ERROR("Read bcaps over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read bcaps over DDC failed (%d)\n", ret); return ret; } *repeater_present = val & DRM_HDCP_DDC_BCAPS_REPEATER_PRESENT; @@ -1020,7 +1020,7 @@ int intel_hdmi_hdcp_read_ri_prime(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_RI_PRIME, ri_prime, DRM_HDCP_RI_LEN); if (ret) - DRM_ERROR("Read Ri' over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read Ri' over DDC failed (%d)\n", ret); return ret; } @@ -1033,7 +1033,7 @@ int intel_hdmi_hdcp_read_ksv_ready(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); if (ret) { - DRM_ERROR("Read bcaps over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read bcaps over DDC failed (%d)\n", ret); return ret; } *ksv_ready = val & DRM_HDCP_DDC_BCAPS_KSV_FIFO_READY; @@ -1048,7 +1048,7 @@ int intel_hdmi_hdcp_read_ksv_fifo(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_KSV_FIFO, ksv_fifo, num_downstream * DRM_HDCP_KSV_LEN); if (ret) { - DRM_ERROR("Read ksv fifo over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read ksv fifo over DDC failed (%d)\n", ret); return ret; } return 0; @@ -1066,7 +1066,7 @@ int intel_hdmi_hdcp_read_v_prime_part(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_V_PRIME(i), part, DRM_HDCP_V_PRIME_PART_LEN); if (ret) - DRM_ERROR("Read V'[%d] over DDC failed (%d)\n", i, ret); + DRM_DEBUG_KMS("Read V'[%d] over DDC failed (%d)\n", i, ret); return ret; } -- 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v6] drm/i915: Move the DDC/AUX failure msgs to debug log 2018-10-23 9:22 ` [PATCH v5 4/4] drm/i915: Move the DDC/AUX failure msgs to debug log Ramalingam C @ 2018-10-23 10:41 ` Ramalingam C 2018-10-23 14:05 ` Daniel Vetter 0 siblings, 1 reply; 14+ messages in thread From: Ramalingam C @ 2018-10-23 10:41 UTC (permalink / raw) To: daniel.vetter, intel-gfx When a HDCP authentication is in progress, if the display sink is hot unplugged, all DDC/AUX transaction related to the HDCP authentication will fail. This patch moves those kind of HDCP DDC/AUX failures into the debug logs instead of errors. v2: Bksv invalid state is provided as debug msg Signed-off-by: Ramalingam C <ramalingam.c@intel.com> --- drivers/gpu/drm/i915/intel_dp.c | 25 +++++++++++++------------ drivers/gpu/drm/i915/intel_hdcp.c | 2 +- drivers/gpu/drm/i915/intel_hdmi.c | 18 +++++++++--------- 3 files changed, 23 insertions(+), 22 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 27377bf8105c..ac13aa3cef91 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c @@ -5347,7 +5347,8 @@ int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, dpcd_ret = drm_dp_dpcd_write(&intel_dig_port->dp.aux, DP_AUX_HDCP_AN, an, DRM_HDCP_AN_LEN); if (dpcd_ret != DRM_HDCP_AN_LEN) { - DRM_ERROR("Failed to write An over DP/AUX (%zd)\n", dpcd_ret); + DRM_DEBUG_KMS("Failed to write An over DP/AUX (%zd)\n", + dpcd_ret); return dpcd_ret >= 0 ? -EIO : dpcd_ret; } @@ -5363,10 +5364,10 @@ int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, rxbuf, sizeof(rxbuf), DP_AUX_CH_CTL_AUX_AKSV_SELECT); if (ret < 0) { - DRM_ERROR("Write Aksv over DP/AUX failed (%d)\n", ret); + DRM_DEBUG_KMS("Write Aksv over DP/AUX failed (%d)\n", ret); return ret; } else if (ret == 0) { - DRM_ERROR("Aksv write over DP/AUX was empty\n"); + DRM_DEBUG_KMS("Aksv write over DP/AUX was empty\n"); return -EIO; } @@ -5381,7 +5382,7 @@ static int intel_dp_hdcp_read_bksv(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BKSV, bksv, DRM_HDCP_KSV_LEN); if (ret != DRM_HDCP_KSV_LEN) { - DRM_ERROR("Read Bksv from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read Bksv from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } return 0; @@ -5399,7 +5400,7 @@ static int intel_dp_hdcp_read_bstatus(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BINFO, bstatus, DRM_HDCP_BSTATUS_LEN); if (ret != DRM_HDCP_BSTATUS_LEN) { - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } return 0; @@ -5414,7 +5415,7 @@ int intel_dp_hdcp_read_bcaps(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BCAPS, bcaps, 1); if (ret != 1) { - DRM_ERROR("Read bcaps from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read bcaps from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } @@ -5444,7 +5445,7 @@ int intel_dp_hdcp_read_ri_prime(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_RI_PRIME, ri_prime, DRM_HDCP_RI_LEN); if (ret != DRM_HDCP_RI_LEN) { - DRM_ERROR("Read Ri' from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read Ri' from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } return 0; @@ -5459,7 +5460,7 @@ int intel_dp_hdcp_read_ksv_ready(struct intel_digital_port *intel_dig_port, ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BSTATUS, &bstatus, 1); if (ret != 1) { - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); return ret >= 0 ? -EIO : ret; } *ksv_ready = bstatus & DP_BSTATUS_READY; @@ -5481,8 +5482,8 @@ int intel_dp_hdcp_read_ksv_fifo(struct intel_digital_port *intel_dig_port, ksv_fifo + i * DRM_HDCP_KSV_LEN, len); if (ret != len) { - DRM_ERROR("Read ksv[%d] from DP/AUX failed (%zd)\n", i, - ret); + DRM_DEBUG_KMS("Read ksv[%d] from DP/AUX failed (%zd)\n", + i, ret); return ret >= 0 ? -EIO : ret; } } @@ -5502,7 +5503,7 @@ int intel_dp_hdcp_read_v_prime_part(struct intel_digital_port *intel_dig_port, DP_AUX_HDCP_V_PRIME(i), part, DRM_HDCP_V_PRIME_PART_LEN); if (ret != DRM_HDCP_V_PRIME_PART_LEN) { - DRM_ERROR("Read v'[%d] from DP/AUX failed (%zd)\n", i, ret); + DRM_DEBUG_KMS("Read v'[%d] from DP/AUX failed (%zd)\n", i, ret); return ret >= 0 ? -EIO : ret; } return 0; @@ -5525,7 +5526,7 @@ bool intel_dp_hdcp_check_link(struct intel_digital_port *intel_dig_port) ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BSTATUS, &bstatus, 1); if (ret != 1) { - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); return false; } diff --git a/drivers/gpu/drm/i915/intel_hdcp.c b/drivers/gpu/drm/i915/intel_hdcp.c index 283b45636668..5b423a78518d 100644 --- a/drivers/gpu/drm/i915/intel_hdcp.c +++ b/drivers/gpu/drm/i915/intel_hdcp.c @@ -44,7 +44,7 @@ int intel_hdcp_read_valid_bksv(struct intel_digital_port *intel_dig_port, break; } if (i == tries) { - DRM_ERROR("Bksv is invalid\n"); + DRM_DEBUG_KMS("Bksv is invalid\n"); return -ENODEV; } diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c index 72e8a73dfa1c..d3e653640ce7 100644 --- a/drivers/gpu/drm/i915/intel_hdmi.c +++ b/drivers/gpu/drm/i915/intel_hdmi.c @@ -961,13 +961,13 @@ int intel_hdmi_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_write(intel_dig_port, DRM_HDCP_DDC_AN, an, DRM_HDCP_AN_LEN); if (ret) { - DRM_ERROR("Write An over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Write An over DDC failed (%d)\n", ret); return ret; } ret = intel_gmbus_output_aksv(adapter); if (ret < 0) { - DRM_ERROR("Failed to output aksv (%d)\n", ret); + DRM_DEBUG_KMS("Failed to output aksv (%d)\n", ret); return ret; } return 0; @@ -980,7 +980,7 @@ static int intel_hdmi_hdcp_read_bksv(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BKSV, bksv, DRM_HDCP_KSV_LEN); if (ret) - DRM_ERROR("Read Bksv over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read Bksv over DDC failed (%d)\n", ret); return ret; } @@ -992,7 +992,7 @@ int intel_hdmi_hdcp_read_bstatus(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BSTATUS, bstatus, DRM_HDCP_BSTATUS_LEN); if (ret) - DRM_ERROR("Read bstatus over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read bstatus over DDC failed (%d)\n", ret); return ret; } @@ -1005,7 +1005,7 @@ int intel_hdmi_hdcp_repeater_present(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); if (ret) { - DRM_ERROR("Read bcaps over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read bcaps over DDC failed (%d)\n", ret); return ret; } *repeater_present = val & DRM_HDCP_DDC_BCAPS_REPEATER_PRESENT; @@ -1020,7 +1020,7 @@ int intel_hdmi_hdcp_read_ri_prime(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_RI_PRIME, ri_prime, DRM_HDCP_RI_LEN); if (ret) - DRM_ERROR("Read Ri' over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read Ri' over DDC failed (%d)\n", ret); return ret; } @@ -1033,7 +1033,7 @@ int intel_hdmi_hdcp_read_ksv_ready(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); if (ret) { - DRM_ERROR("Read bcaps over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read bcaps over DDC failed (%d)\n", ret); return ret; } *ksv_ready = val & DRM_HDCP_DDC_BCAPS_KSV_FIFO_READY; @@ -1048,7 +1048,7 @@ int intel_hdmi_hdcp_read_ksv_fifo(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_KSV_FIFO, ksv_fifo, num_downstream * DRM_HDCP_KSV_LEN); if (ret) { - DRM_ERROR("Read ksv fifo over DDC failed (%d)\n", ret); + DRM_DEBUG_KMS("Read ksv fifo over DDC failed (%d)\n", ret); return ret; } return 0; @@ -1066,7 +1066,7 @@ int intel_hdmi_hdcp_read_v_prime_part(struct intel_digital_port *intel_dig_port, ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_V_PRIME(i), part, DRM_HDCP_V_PRIME_PART_LEN); if (ret) - DRM_ERROR("Read V'[%d] over DDC failed (%d)\n", i, ret); + DRM_DEBUG_KMS("Read V'[%d] over DDC failed (%d)\n", i, ret); return ret; } -- 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH v6] drm/i915: Move the DDC/AUX failure msgs to debug log 2018-10-23 10:41 ` [PATCH v6] " Ramalingam C @ 2018-10-23 14:05 ` Daniel Vetter 2018-10-24 7:34 ` Daniel Vetter 0 siblings, 1 reply; 14+ messages in thread From: Daniel Vetter @ 2018-10-23 14:05 UTC (permalink / raw) To: Ramalingam C; +Cc: daniel.vetter, intel-gfx On Tue, Oct 23, 2018 at 04:11:28PM +0530, Ramalingam C wrote: > When a HDCP authentication is in progress, if the display sink is > hot unplugged, all DDC/AUX transaction related to the HDCP > authentication will fail. > > This patch moves those kind of HDCP DDC/AUX failures into the debug > logs instead of errors. > > v2: > Bksv invalid state is provided as debug msg > > Signed-off-by: Ramalingam C <ramalingam.c@intel.com> For the record, summary of our irc discussion: Anything the user (e.g. hotplug while hdcp code is running by yanking the cable) or userspace (e.g. through invalid ioctl parameters) can provoke to happen must use DRM_DEBUG_* instead of DRM_ERROR. DRM_ERROR is truly only for the impossible stuff (hw bugs, kernel driver bugs, that kind of stuff). Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > drivers/gpu/drm/i915/intel_dp.c | 25 +++++++++++++------------ > drivers/gpu/drm/i915/intel_hdcp.c | 2 +- > drivers/gpu/drm/i915/intel_hdmi.c | 18 +++++++++--------- > 3 files changed, 23 insertions(+), 22 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c > index 27377bf8105c..ac13aa3cef91 100644 > --- a/drivers/gpu/drm/i915/intel_dp.c > +++ b/drivers/gpu/drm/i915/intel_dp.c > @@ -5347,7 +5347,8 @@ int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, > dpcd_ret = drm_dp_dpcd_write(&intel_dig_port->dp.aux, DP_AUX_HDCP_AN, > an, DRM_HDCP_AN_LEN); > if (dpcd_ret != DRM_HDCP_AN_LEN) { > - DRM_ERROR("Failed to write An over DP/AUX (%zd)\n", dpcd_ret); > + DRM_DEBUG_KMS("Failed to write An over DP/AUX (%zd)\n", > + dpcd_ret); > return dpcd_ret >= 0 ? -EIO : dpcd_ret; > } > > @@ -5363,10 +5364,10 @@ int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, > rxbuf, sizeof(rxbuf), > DP_AUX_CH_CTL_AUX_AKSV_SELECT); > if (ret < 0) { > - DRM_ERROR("Write Aksv over DP/AUX failed (%d)\n", ret); > + DRM_DEBUG_KMS("Write Aksv over DP/AUX failed (%d)\n", ret); > return ret; > } else if (ret == 0) { > - DRM_ERROR("Aksv write over DP/AUX was empty\n"); > + DRM_DEBUG_KMS("Aksv write over DP/AUX was empty\n"); > return -EIO; > } > > @@ -5381,7 +5382,7 @@ static int intel_dp_hdcp_read_bksv(struct intel_digital_port *intel_dig_port, > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BKSV, bksv, > DRM_HDCP_KSV_LEN); > if (ret != DRM_HDCP_KSV_LEN) { > - DRM_ERROR("Read Bksv from DP/AUX failed (%zd)\n", ret); > + DRM_DEBUG_KMS("Read Bksv from DP/AUX failed (%zd)\n", ret); > return ret >= 0 ? -EIO : ret; > } > return 0; > @@ -5399,7 +5400,7 @@ static int intel_dp_hdcp_read_bstatus(struct intel_digital_port *intel_dig_port, > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BINFO, > bstatus, DRM_HDCP_BSTATUS_LEN); > if (ret != DRM_HDCP_BSTATUS_LEN) { > - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); > + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); > return ret >= 0 ? -EIO : ret; > } > return 0; > @@ -5414,7 +5415,7 @@ int intel_dp_hdcp_read_bcaps(struct intel_digital_port *intel_dig_port, > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BCAPS, > bcaps, 1); > if (ret != 1) { > - DRM_ERROR("Read bcaps from DP/AUX failed (%zd)\n", ret); > + DRM_DEBUG_KMS("Read bcaps from DP/AUX failed (%zd)\n", ret); > return ret >= 0 ? -EIO : ret; > } > > @@ -5444,7 +5445,7 @@ int intel_dp_hdcp_read_ri_prime(struct intel_digital_port *intel_dig_port, > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_RI_PRIME, > ri_prime, DRM_HDCP_RI_LEN); > if (ret != DRM_HDCP_RI_LEN) { > - DRM_ERROR("Read Ri' from DP/AUX failed (%zd)\n", ret); > + DRM_DEBUG_KMS("Read Ri' from DP/AUX failed (%zd)\n", ret); > return ret >= 0 ? -EIO : ret; > } > return 0; > @@ -5459,7 +5460,7 @@ int intel_dp_hdcp_read_ksv_ready(struct intel_digital_port *intel_dig_port, > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BSTATUS, > &bstatus, 1); > if (ret != 1) { > - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); > + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); > return ret >= 0 ? -EIO : ret; > } > *ksv_ready = bstatus & DP_BSTATUS_READY; > @@ -5481,8 +5482,8 @@ int intel_dp_hdcp_read_ksv_fifo(struct intel_digital_port *intel_dig_port, > ksv_fifo + i * DRM_HDCP_KSV_LEN, > len); > if (ret != len) { > - DRM_ERROR("Read ksv[%d] from DP/AUX failed (%zd)\n", i, > - ret); > + DRM_DEBUG_KMS("Read ksv[%d] from DP/AUX failed (%zd)\n", > + i, ret); > return ret >= 0 ? -EIO : ret; > } > } > @@ -5502,7 +5503,7 @@ int intel_dp_hdcp_read_v_prime_part(struct intel_digital_port *intel_dig_port, > DP_AUX_HDCP_V_PRIME(i), part, > DRM_HDCP_V_PRIME_PART_LEN); > if (ret != DRM_HDCP_V_PRIME_PART_LEN) { > - DRM_ERROR("Read v'[%d] from DP/AUX failed (%zd)\n", i, ret); > + DRM_DEBUG_KMS("Read v'[%d] from DP/AUX failed (%zd)\n", i, ret); > return ret >= 0 ? -EIO : ret; > } > return 0; > @@ -5525,7 +5526,7 @@ bool intel_dp_hdcp_check_link(struct intel_digital_port *intel_dig_port) > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BSTATUS, > &bstatus, 1); > if (ret != 1) { > - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); > + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); > return false; > } > > diff --git a/drivers/gpu/drm/i915/intel_hdcp.c b/drivers/gpu/drm/i915/intel_hdcp.c > index 283b45636668..5b423a78518d 100644 > --- a/drivers/gpu/drm/i915/intel_hdcp.c > +++ b/drivers/gpu/drm/i915/intel_hdcp.c > @@ -44,7 +44,7 @@ int intel_hdcp_read_valid_bksv(struct intel_digital_port *intel_dig_port, > break; > } > if (i == tries) { > - DRM_ERROR("Bksv is invalid\n"); > + DRM_DEBUG_KMS("Bksv is invalid\n"); > return -ENODEV; > } > > diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c > index 72e8a73dfa1c..d3e653640ce7 100644 > --- a/drivers/gpu/drm/i915/intel_hdmi.c > +++ b/drivers/gpu/drm/i915/intel_hdmi.c > @@ -961,13 +961,13 @@ int intel_hdmi_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, > ret = intel_hdmi_hdcp_write(intel_dig_port, DRM_HDCP_DDC_AN, an, > DRM_HDCP_AN_LEN); > if (ret) { > - DRM_ERROR("Write An over DDC failed (%d)\n", ret); > + DRM_DEBUG_KMS("Write An over DDC failed (%d)\n", ret); > return ret; > } > > ret = intel_gmbus_output_aksv(adapter); > if (ret < 0) { > - DRM_ERROR("Failed to output aksv (%d)\n", ret); > + DRM_DEBUG_KMS("Failed to output aksv (%d)\n", ret); > return ret; > } > return 0; > @@ -980,7 +980,7 @@ static int intel_hdmi_hdcp_read_bksv(struct intel_digital_port *intel_dig_port, > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BKSV, bksv, > DRM_HDCP_KSV_LEN); > if (ret) > - DRM_ERROR("Read Bksv over DDC failed (%d)\n", ret); > + DRM_DEBUG_KMS("Read Bksv over DDC failed (%d)\n", ret); > return ret; > } > > @@ -992,7 +992,7 @@ int intel_hdmi_hdcp_read_bstatus(struct intel_digital_port *intel_dig_port, > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BSTATUS, > bstatus, DRM_HDCP_BSTATUS_LEN); > if (ret) > - DRM_ERROR("Read bstatus over DDC failed (%d)\n", ret); > + DRM_DEBUG_KMS("Read bstatus over DDC failed (%d)\n", ret); > return ret; > } > > @@ -1005,7 +1005,7 @@ int intel_hdmi_hdcp_repeater_present(struct intel_digital_port *intel_dig_port, > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); > if (ret) { > - DRM_ERROR("Read bcaps over DDC failed (%d)\n", ret); > + DRM_DEBUG_KMS("Read bcaps over DDC failed (%d)\n", ret); > return ret; > } > *repeater_present = val & DRM_HDCP_DDC_BCAPS_REPEATER_PRESENT; > @@ -1020,7 +1020,7 @@ int intel_hdmi_hdcp_read_ri_prime(struct intel_digital_port *intel_dig_port, > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_RI_PRIME, > ri_prime, DRM_HDCP_RI_LEN); > if (ret) > - DRM_ERROR("Read Ri' over DDC failed (%d)\n", ret); > + DRM_DEBUG_KMS("Read Ri' over DDC failed (%d)\n", ret); > return ret; > } > > @@ -1033,7 +1033,7 @@ int intel_hdmi_hdcp_read_ksv_ready(struct intel_digital_port *intel_dig_port, > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); > if (ret) { > - DRM_ERROR("Read bcaps over DDC failed (%d)\n", ret); > + DRM_DEBUG_KMS("Read bcaps over DDC failed (%d)\n", ret); > return ret; > } > *ksv_ready = val & DRM_HDCP_DDC_BCAPS_KSV_FIFO_READY; > @@ -1048,7 +1048,7 @@ int intel_hdmi_hdcp_read_ksv_fifo(struct intel_digital_port *intel_dig_port, > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_KSV_FIFO, > ksv_fifo, num_downstream * DRM_HDCP_KSV_LEN); > if (ret) { > - DRM_ERROR("Read ksv fifo over DDC failed (%d)\n", ret); > + DRM_DEBUG_KMS("Read ksv fifo over DDC failed (%d)\n", ret); > return ret; > } > return 0; > @@ -1066,7 +1066,7 @@ int intel_hdmi_hdcp_read_v_prime_part(struct intel_digital_port *intel_dig_port, > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_V_PRIME(i), > part, DRM_HDCP_V_PRIME_PART_LEN); > if (ret) > - DRM_ERROR("Read V'[%d] over DDC failed (%d)\n", i, ret); > + DRM_DEBUG_KMS("Read V'[%d] over DDC failed (%d)\n", i, ret); > return ret; > } > > -- > 2.7.4 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v6] drm/i915: Move the DDC/AUX failure msgs to debug log 2018-10-23 14:05 ` Daniel Vetter @ 2018-10-24 7:34 ` Daniel Vetter 0 siblings, 0 replies; 14+ messages in thread From: Daniel Vetter @ 2018-10-24 7:34 UTC (permalink / raw) To: Ramalingam C; +Cc: daniel.vetter, intel-gfx On Tue, Oct 23, 2018 at 04:05:29PM +0200, Daniel Vetter wrote: > On Tue, Oct 23, 2018 at 04:11:28PM +0530, Ramalingam C wrote: > > When a HDCP authentication is in progress, if the display sink is > > hot unplugged, all DDC/AUX transaction related to the HDCP > > authentication will fail. > > > > This patch moves those kind of HDCP DDC/AUX failures into the debug > > logs instead of errors. > > > > v2: > > Bksv invalid state is provided as debug msg > > > > Signed-off-by: Ramalingam C <ramalingam.c@intel.com> > > For the record, summary of our irc discussion: > > Anything the user (e.g. hotplug while hdcp code is running by yanking the > cable) or userspace (e.g. through invalid ioctl parameters) can provoke to > happen must use DRM_DEBUG_* instead of DRM_ERROR. DRM_ERROR is truly only > for the impossible stuff (hw bugs, kernel driver bugs, that kind of > stuff). > > Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> CI approved, so applied&pushed, thanks for your patches. > > > --- > > drivers/gpu/drm/i915/intel_dp.c | 25 +++++++++++++------------ > > drivers/gpu/drm/i915/intel_hdcp.c | 2 +- > > drivers/gpu/drm/i915/intel_hdmi.c | 18 +++++++++--------- > > 3 files changed, 23 insertions(+), 22 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c > > index 27377bf8105c..ac13aa3cef91 100644 > > --- a/drivers/gpu/drm/i915/intel_dp.c > > +++ b/drivers/gpu/drm/i915/intel_dp.c > > @@ -5347,7 +5347,8 @@ int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, > > dpcd_ret = drm_dp_dpcd_write(&intel_dig_port->dp.aux, DP_AUX_HDCP_AN, > > an, DRM_HDCP_AN_LEN); > > if (dpcd_ret != DRM_HDCP_AN_LEN) { > > - DRM_ERROR("Failed to write An over DP/AUX (%zd)\n", dpcd_ret); > > + DRM_DEBUG_KMS("Failed to write An over DP/AUX (%zd)\n", > > + dpcd_ret); > > return dpcd_ret >= 0 ? -EIO : dpcd_ret; > > } > > > > @@ -5363,10 +5364,10 @@ int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, > > rxbuf, sizeof(rxbuf), > > DP_AUX_CH_CTL_AUX_AKSV_SELECT); > > if (ret < 0) { > > - DRM_ERROR("Write Aksv over DP/AUX failed (%d)\n", ret); > > + DRM_DEBUG_KMS("Write Aksv over DP/AUX failed (%d)\n", ret); > > return ret; > > } else if (ret == 0) { > > - DRM_ERROR("Aksv write over DP/AUX was empty\n"); > > + DRM_DEBUG_KMS("Aksv write over DP/AUX was empty\n"); > > return -EIO; > > } > > > > @@ -5381,7 +5382,7 @@ static int intel_dp_hdcp_read_bksv(struct intel_digital_port *intel_dig_port, > > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BKSV, bksv, > > DRM_HDCP_KSV_LEN); > > if (ret != DRM_HDCP_KSV_LEN) { > > - DRM_ERROR("Read Bksv from DP/AUX failed (%zd)\n", ret); > > + DRM_DEBUG_KMS("Read Bksv from DP/AUX failed (%zd)\n", ret); > > return ret >= 0 ? -EIO : ret; > > } > > return 0; > > @@ -5399,7 +5400,7 @@ static int intel_dp_hdcp_read_bstatus(struct intel_digital_port *intel_dig_port, > > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BINFO, > > bstatus, DRM_HDCP_BSTATUS_LEN); > > if (ret != DRM_HDCP_BSTATUS_LEN) { > > - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); > > + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); > > return ret >= 0 ? -EIO : ret; > > } > > return 0; > > @@ -5414,7 +5415,7 @@ int intel_dp_hdcp_read_bcaps(struct intel_digital_port *intel_dig_port, > > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BCAPS, > > bcaps, 1); > > if (ret != 1) { > > - DRM_ERROR("Read bcaps from DP/AUX failed (%zd)\n", ret); > > + DRM_DEBUG_KMS("Read bcaps from DP/AUX failed (%zd)\n", ret); > > return ret >= 0 ? -EIO : ret; > > } > > > > @@ -5444,7 +5445,7 @@ int intel_dp_hdcp_read_ri_prime(struct intel_digital_port *intel_dig_port, > > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_RI_PRIME, > > ri_prime, DRM_HDCP_RI_LEN); > > if (ret != DRM_HDCP_RI_LEN) { > > - DRM_ERROR("Read Ri' from DP/AUX failed (%zd)\n", ret); > > + DRM_DEBUG_KMS("Read Ri' from DP/AUX failed (%zd)\n", ret); > > return ret >= 0 ? -EIO : ret; > > } > > return 0; > > @@ -5459,7 +5460,7 @@ int intel_dp_hdcp_read_ksv_ready(struct intel_digital_port *intel_dig_port, > > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BSTATUS, > > &bstatus, 1); > > if (ret != 1) { > > - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); > > + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); > > return ret >= 0 ? -EIO : ret; > > } > > *ksv_ready = bstatus & DP_BSTATUS_READY; > > @@ -5481,8 +5482,8 @@ int intel_dp_hdcp_read_ksv_fifo(struct intel_digital_port *intel_dig_port, > > ksv_fifo + i * DRM_HDCP_KSV_LEN, > > len); > > if (ret != len) { > > - DRM_ERROR("Read ksv[%d] from DP/AUX failed (%zd)\n", i, > > - ret); > > + DRM_DEBUG_KMS("Read ksv[%d] from DP/AUX failed (%zd)\n", > > + i, ret); > > return ret >= 0 ? -EIO : ret; > > } > > } > > @@ -5502,7 +5503,7 @@ int intel_dp_hdcp_read_v_prime_part(struct intel_digital_port *intel_dig_port, > > DP_AUX_HDCP_V_PRIME(i), part, > > DRM_HDCP_V_PRIME_PART_LEN); > > if (ret != DRM_HDCP_V_PRIME_PART_LEN) { > > - DRM_ERROR("Read v'[%d] from DP/AUX failed (%zd)\n", i, ret); > > + DRM_DEBUG_KMS("Read v'[%d] from DP/AUX failed (%zd)\n", i, ret); > > return ret >= 0 ? -EIO : ret; > > } > > return 0; > > @@ -5525,7 +5526,7 @@ bool intel_dp_hdcp_check_link(struct intel_digital_port *intel_dig_port) > > ret = drm_dp_dpcd_read(&intel_dig_port->dp.aux, DP_AUX_HDCP_BSTATUS, > > &bstatus, 1); > > if (ret != 1) { > > - DRM_ERROR("Read bstatus from DP/AUX failed (%zd)\n", ret); > > + DRM_DEBUG_KMS("Read bstatus from DP/AUX failed (%zd)\n", ret); > > return false; > > } > > > > diff --git a/drivers/gpu/drm/i915/intel_hdcp.c b/drivers/gpu/drm/i915/intel_hdcp.c > > index 283b45636668..5b423a78518d 100644 > > --- a/drivers/gpu/drm/i915/intel_hdcp.c > > +++ b/drivers/gpu/drm/i915/intel_hdcp.c > > @@ -44,7 +44,7 @@ int intel_hdcp_read_valid_bksv(struct intel_digital_port *intel_dig_port, > > break; > > } > > if (i == tries) { > > - DRM_ERROR("Bksv is invalid\n"); > > + DRM_DEBUG_KMS("Bksv is invalid\n"); > > return -ENODEV; > > } > > > > diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c > > index 72e8a73dfa1c..d3e653640ce7 100644 > > --- a/drivers/gpu/drm/i915/intel_hdmi.c > > +++ b/drivers/gpu/drm/i915/intel_hdmi.c > > @@ -961,13 +961,13 @@ int intel_hdmi_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port, > > ret = intel_hdmi_hdcp_write(intel_dig_port, DRM_HDCP_DDC_AN, an, > > DRM_HDCP_AN_LEN); > > if (ret) { > > - DRM_ERROR("Write An over DDC failed (%d)\n", ret); > > + DRM_DEBUG_KMS("Write An over DDC failed (%d)\n", ret); > > return ret; > > } > > > > ret = intel_gmbus_output_aksv(adapter); > > if (ret < 0) { > > - DRM_ERROR("Failed to output aksv (%d)\n", ret); > > + DRM_DEBUG_KMS("Failed to output aksv (%d)\n", ret); > > return ret; > > } > > return 0; > > @@ -980,7 +980,7 @@ static int intel_hdmi_hdcp_read_bksv(struct intel_digital_port *intel_dig_port, > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BKSV, bksv, > > DRM_HDCP_KSV_LEN); > > if (ret) > > - DRM_ERROR("Read Bksv over DDC failed (%d)\n", ret); > > + DRM_DEBUG_KMS("Read Bksv over DDC failed (%d)\n", ret); > > return ret; > > } > > > > @@ -992,7 +992,7 @@ int intel_hdmi_hdcp_read_bstatus(struct intel_digital_port *intel_dig_port, > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BSTATUS, > > bstatus, DRM_HDCP_BSTATUS_LEN); > > if (ret) > > - DRM_ERROR("Read bstatus over DDC failed (%d)\n", ret); > > + DRM_DEBUG_KMS("Read bstatus over DDC failed (%d)\n", ret); > > return ret; > > } > > > > @@ -1005,7 +1005,7 @@ int intel_hdmi_hdcp_repeater_present(struct intel_digital_port *intel_dig_port, > > > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); > > if (ret) { > > - DRM_ERROR("Read bcaps over DDC failed (%d)\n", ret); > > + DRM_DEBUG_KMS("Read bcaps over DDC failed (%d)\n", ret); > > return ret; > > } > > *repeater_present = val & DRM_HDCP_DDC_BCAPS_REPEATER_PRESENT; > > @@ -1020,7 +1020,7 @@ int intel_hdmi_hdcp_read_ri_prime(struct intel_digital_port *intel_dig_port, > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_RI_PRIME, > > ri_prime, DRM_HDCP_RI_LEN); > > if (ret) > > - DRM_ERROR("Read Ri' over DDC failed (%d)\n", ret); > > + DRM_DEBUG_KMS("Read Ri' over DDC failed (%d)\n", ret); > > return ret; > > } > > > > @@ -1033,7 +1033,7 @@ int intel_hdmi_hdcp_read_ksv_ready(struct intel_digital_port *intel_dig_port, > > > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_BCAPS, &val, 1); > > if (ret) { > > - DRM_ERROR("Read bcaps over DDC failed (%d)\n", ret); > > + DRM_DEBUG_KMS("Read bcaps over DDC failed (%d)\n", ret); > > return ret; > > } > > *ksv_ready = val & DRM_HDCP_DDC_BCAPS_KSV_FIFO_READY; > > @@ -1048,7 +1048,7 @@ int intel_hdmi_hdcp_read_ksv_fifo(struct intel_digital_port *intel_dig_port, > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_KSV_FIFO, > > ksv_fifo, num_downstream * DRM_HDCP_KSV_LEN); > > if (ret) { > > - DRM_ERROR("Read ksv fifo over DDC failed (%d)\n", ret); > > + DRM_DEBUG_KMS("Read ksv fifo over DDC failed (%d)\n", ret); > > return ret; > > } > > return 0; > > @@ -1066,7 +1066,7 @@ int intel_hdmi_hdcp_read_v_prime_part(struct intel_digital_port *intel_dig_port, > > ret = intel_hdmi_hdcp_read(intel_dig_port, DRM_HDCP_DDC_V_PRIME(i), > > part, DRM_HDCP_V_PRIME_PART_LEN); > > if (ret) > > - DRM_ERROR("Read V'[%d] over DDC failed (%d)\n", i, ret); > > + DRM_DEBUG_KMS("Read V'[%d] over DDC failed (%d)\n", i, ret); > > return ret; > > } > > > > -- > > 2.7.4 > > > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for Enabling the IGT for HDCP1.4 (rev5) 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C ` (3 preceding siblings ...) 2018-10-23 9:22 ` [PATCH v5 4/4] drm/i915: Move the DDC/AUX failure msgs to debug log Ramalingam C @ 2018-10-23 9:37 ` Patchwork 2018-10-23 10:02 ` ✗ Fi.CI.BAT: failure " Patchwork ` (3 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2018-10-23 9:37 UTC (permalink / raw) To: Ramalingam C; +Cc: intel-gfx == Series Details == Series: Enabling the IGT for HDCP1.4 (rev5) URL : https://patchwork.freedesktop.org/series/51113/ State : warning == Summary == $ dim checkpatch origin/drm-tip d9e796262c20 drm/i915: Pullout the bksv read and validation 9fa115201d78 drm/i915: hdcp_check_link only on CP_IRQ 5ca4b15ca5b6 drm/i915/debugfs: hdcp capability of a sink -:54: WARNING:SYMBOLIC_PERMS: Symbolic permissions 'S_IRUGO' are not preferred. Consider using octal permissions '0444'. #54: FILE: drivers/gpu/drm/i915/i915_debugfs.c:5034: + debugfs_create_file("i915_hdcp_sink_capability", S_IRUGO, root, total: 0 errors, 1 warnings, 0 checks, 126 lines checked 54c832200d20 drm/i915: Move the DDC/AUX failure msgs to debug log _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✗ Fi.CI.BAT: failure for Enabling the IGT for HDCP1.4 (rev5) 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C ` (4 preceding siblings ...) 2018-10-23 9:37 ` ✗ Fi.CI.CHECKPATCH: warning for Enabling the IGT for HDCP1.4 (rev5) Patchwork @ 2018-10-23 10:02 ` Patchwork 2018-10-23 11:17 ` ✗ Fi.CI.CHECKPATCH: warning for Enabling the IGT for HDCP1.4 (rev6) Patchwork ` (2 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2018-10-23 10:02 UTC (permalink / raw) To: Ramalingam C; +Cc: intel-gfx == Series Details == Series: Enabling the IGT for HDCP1.4 (rev5) URL : https://patchwork.freedesktop.org/series/51113/ State : failure == Summary == = CI Bug Log - changes from CI_DRM_5020 -> Patchwork_10539 = == Summary - FAILURE == Serious unknown changes coming with Patchwork_10539 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_10539, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://patchwork.freedesktop.org/api/1.0/series/51113/revisions/5/mbox/ == Possible new issues == Here are the unknown changes that may have been introduced in Patchwork_10539: === IGT changes === ==== Possible regressions ==== igt@debugfs_test@read_all_entries: fi-bdw-gvtdvm: PASS -> DMESG-WARN igt@drv_selftest@live_execlists: fi-apl-guc: PASS -> DMESG-WARN == Known issues == Here are the changes found in Patchwork_10539 that come from known issues: === IGT changes === ==== Issues hit ==== igt@gem_exec_suspend@basic-s4-devices: fi-kbl-7500u: PASS -> DMESG-WARN (fdo#105128, fdo#107139) ==== Possible fixes ==== igt@kms_frontbuffer_tracking@basic: fi-hsw-peppy: DMESG-WARN (fdo#102614) -> PASS igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b: fi-byt-clapper: FAIL (fdo#107362, fdo#103191) -> PASS +1 fi-blb-e6850: INCOMPLETE (fdo#107718) -> PASS igt@prime_vgem@basic-fence-flip: fi-cfl-8700k: FAIL (fdo#104008) -> PASS fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614 fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191 fdo#104008 https://bugs.freedesktop.org/show_bug.cgi?id=104008 fdo#105128 https://bugs.freedesktop.org/show_bug.cgi?id=105128 fdo#107139 https://bugs.freedesktop.org/show_bug.cgi?id=107139 fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362 fdo#107718 https://bugs.freedesktop.org/show_bug.cgi?id=107718 == Participating hosts (47 -> 43) == Additional (1): fi-icl-u Missing (5): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 == Build changes == * Linux: CI_DRM_5020 -> Patchwork_10539 CI_DRM_5020: 95151c25e0433a2fe771b8bc272f3f8fb54a7e27 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_4686: 741bf7064c467df725c14cc0b3b8b50436f9ee09 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_10539: 54c832200d201d353dfff24da6f7f987f8d023ac @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == 54c832200d20 drm/i915: Move the DDC/AUX failure msgs to debug log 5ca4b15ca5b6 drm/i915/debugfs: hdcp capability of a sink 9fa115201d78 drm/i915: hdcp_check_link only on CP_IRQ d9e796262c20 drm/i915: Pullout the bksv read and validation == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10539/issues.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for Enabling the IGT for HDCP1.4 (rev6) 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C ` (5 preceding siblings ...) 2018-10-23 10:02 ` ✗ Fi.CI.BAT: failure " Patchwork @ 2018-10-23 11:17 ` Patchwork 2018-10-23 11:39 ` ✓ Fi.CI.BAT: success " Patchwork 2018-10-23 14:07 ` ✗ Fi.CI.IGT: failure " Patchwork 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2018-10-23 11:17 UTC (permalink / raw) To: Ramalingam C; +Cc: intel-gfx == Series Details == Series: Enabling the IGT for HDCP1.4 (rev6) URL : https://patchwork.freedesktop.org/series/51113/ State : warning == Summary == $ dim checkpatch origin/drm-tip c3c2b2c2adde drm/i915: Pullout the bksv read and validation a19f5d9b3ed9 drm/i915: hdcp_check_link only on CP_IRQ 91f4c1759328 drm/i915/debugfs: hdcp capability of a sink -:54: WARNING:SYMBOLIC_PERMS: Symbolic permissions 'S_IRUGO' are not preferred. Consider using octal permissions '0444'. #54: FILE: drivers/gpu/drm/i915/i915_debugfs.c:5034: + debugfs_create_file("i915_hdcp_sink_capability", S_IRUGO, root, total: 0 errors, 1 warnings, 0 checks, 126 lines checked 9153e6ff86f1 drm/i915: Move the DDC/AUX failure msgs to debug log _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✓ Fi.CI.BAT: success for Enabling the IGT for HDCP1.4 (rev6) 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C ` (6 preceding siblings ...) 2018-10-23 11:17 ` ✗ Fi.CI.CHECKPATCH: warning for Enabling the IGT for HDCP1.4 (rev6) Patchwork @ 2018-10-23 11:39 ` Patchwork 2018-10-23 14:07 ` ✗ Fi.CI.IGT: failure " Patchwork 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2018-10-23 11:39 UTC (permalink / raw) To: Ramalingam C; +Cc: intel-gfx == Series Details == Series: Enabling the IGT for HDCP1.4 (rev6) URL : https://patchwork.freedesktop.org/series/51113/ State : success == Summary == = CI Bug Log - changes from CI_DRM_5020 -> Patchwork_10542 = == Summary - SUCCESS == No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/51113/revisions/6/mbox/ == Known issues == Here are the changes found in Patchwork_10542 that come from known issues: === IGT changes === ==== Issues hit ==== igt@gem_exec_suspend@basic-s3: fi-kbl-soraka: NOTRUN -> INCOMPLETE (fdo#107556, fdo#107774, fdo#107859) igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a: fi-byt-clapper: PASS -> FAIL (fdo#107362) ==== Possible fixes ==== igt@kms_frontbuffer_tracking@basic: fi-hsw-peppy: DMESG-WARN (fdo#102614) -> PASS igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b: fi-byt-clapper: FAIL (fdo#103191, fdo#107362) -> PASS +1 fi-blb-e6850: INCOMPLETE (fdo#107718) -> PASS igt@prime_vgem@basic-fence-flip: fi-cfl-8700k: FAIL (fdo#104008) -> PASS fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614 fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191 fdo#104008 https://bugs.freedesktop.org/show_bug.cgi?id=104008 fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362 fdo#107556 https://bugs.freedesktop.org/show_bug.cgi?id=107556 fdo#107718 https://bugs.freedesktop.org/show_bug.cgi?id=107718 fdo#107774 https://bugs.freedesktop.org/show_bug.cgi?id=107774 fdo#107859 https://bugs.freedesktop.org/show_bug.cgi?id=107859 == Participating hosts (47 -> 45) == Additional (3): fi-kbl-soraka fi-icl-u fi-cfl-8109u Missing (5): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 == Build changes == * Linux: CI_DRM_5020 -> Patchwork_10542 CI_DRM_5020: 95151c25e0433a2fe771b8bc272f3f8fb54a7e27 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_4686: 741bf7064c467df725c14cc0b3b8b50436f9ee09 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_10542: 9153e6ff86f14e84ef9b9e5aae8103c407e606f1 @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == 9153e6ff86f1 drm/i915: Move the DDC/AUX failure msgs to debug log 91f4c1759328 drm/i915/debugfs: hdcp capability of a sink a19f5d9b3ed9 drm/i915: hdcp_check_link only on CP_IRQ c3c2b2c2adde drm/i915: Pullout the bksv read and validation == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10542/issues.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✗ Fi.CI.IGT: failure for Enabling the IGT for HDCP1.4 (rev6) 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C ` (7 preceding siblings ...) 2018-10-23 11:39 ` ✓ Fi.CI.BAT: success " Patchwork @ 2018-10-23 14:07 ` Patchwork 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2018-10-23 14:07 UTC (permalink / raw) To: Ramalingam C; +Cc: intel-gfx == Series Details == Series: Enabling the IGT for HDCP1.4 (rev6) URL : https://patchwork.freedesktop.org/series/51113/ State : failure == Summary == = CI Bug Log - changes from CI_DRM_5020_full -> Patchwork_10542_full = == Summary - FAILURE == Serious unknown changes coming with Patchwork_10542_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_10542_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. == Possible new issues == Here are the unknown changes that may have been introduced in Patchwork_10542_full: === IGT changes === ==== Possible regressions ==== igt@gem_eio@in-flight-suspend: shard-glk: PASS -> FAIL igt@kms_draw_crc@draw-method-xrgb8888-blt-ytiled: shard-skl: NOTRUN -> FAIL ==== Warnings ==== igt@perf_pmu@rc6: shard-kbl: SKIP -> PASS == Known issues == Here are the changes found in Patchwork_10542_full that come from known issues: === IGT changes === ==== Issues hit ==== igt@drv_suspend@forcewake: shard-skl: PASS -> INCOMPLETE (fdo#104108, fdo#107773) igt@gem_cpu_reloc@full: shard-skl: NOTRUN -> INCOMPLETE (fdo#108073) igt@gem_exec_schedule@pi-ringfull-bsd: shard-skl: NOTRUN -> FAIL (fdo#103158) +2 igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-b: shard-hsw: PASS -> DMESG-WARN (fdo#107956) shard-skl: NOTRUN -> DMESG-WARN (fdo#107956) +1 igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-untiled: shard-skl: NOTRUN -> FAIL (fdo#108145) +1 igt@kms_draw_crc@fill-fb: shard-skl: NOTRUN -> FAIL (fdo#103184) igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-plflip-blt: shard-skl: NOTRUN -> FAIL (fdo#103167) +1 igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-gtt: shard-skl: NOTRUN -> FAIL (fdo#105682) +1 igt@kms_frontbuffer_tracking@fbcpsr-stridechange: shard-skl: NOTRUN -> FAIL (fdo#105683) igt@kms_plane@pixel-format-pipe-b-planes: shard-skl: NOTRUN -> DMESG-FAIL (fdo#106885, fdo#103166) igt@kms_plane@plane-position-covered-pipe-b-planes: shard-glk: PASS -> FAIL (fdo#103166) +1 shard-apl: PASS -> FAIL (fdo#103166) igt@kms_plane_alpha_blend@pipe-b-alpha-7efc: shard-skl: NOTRUN -> FAIL (fdo#108146) igt@kms_plane_alpha_blend@pipe-c-alpha-basic: shard-skl: NOTRUN -> FAIL (fdo#108145, fdo#107815) igt@kms_rotation_crc@exhaust-fences: shard-skl: NOTRUN -> DMESG-WARN (fdo#105748) igt@kms_setmode@basic: shard-skl: NOTRUN -> FAIL (fdo#99912) igt@kms_sysfs_edid_timing: shard-skl: NOTRUN -> FAIL (fdo#100047) igt@pm_rpm@modeset-non-lpsp-stress: shard-skl: NOTRUN -> INCOMPLETE (fdo#107807) igt@syncobj_wait@wait-for-submit-delayed-submit: shard-snb: NOTRUN -> INCOMPLETE (fdo#105411) +3 shard-skl: NOTRUN -> INCOMPLETE (fdo#108490) +1 ==== Possible fixes ==== igt@kms_busy@extended-modeset-hang-newfb-render-c: shard-kbl: DMESG-WARN (fdo#107956) -> PASS igt@kms_chv_cursor_fail@pipe-b-256x256-top-edge: shard-glk: DMESG-WARN (fdo#105763, fdo#106538) -> PASS +1 igt@kms_cursor_crc@cursor-128x128-suspend: shard-apl: FAIL (fdo#103191, fdo#103232) -> PASS igt@kms_cursor_crc@cursor-256x256-sliding: shard-apl: FAIL (fdo#103232) -> PASS igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-ytiled: shard-glk: FAIL (fdo#107791) -> PASS igt@kms_flip@absolute-wf_vblank-interruptible: shard-apl: INCOMPLETE (fdo#103927) -> PASS igt@kms_flip@flip-vs-expired-vblank: shard-skl: FAIL (fdo#105363) -> PASS igt@kms_flip@modeset-vs-vblank-race: shard-kbl: FAIL (fdo#103060) -> PASS igt@kms_setmode@basic: shard-apl: FAIL (fdo#99912) -> PASS fdo#100047 https://bugs.freedesktop.org/show_bug.cgi?id=100047 fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060 fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158 fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166 fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167 fdo#103184 https://bugs.freedesktop.org/show_bug.cgi?id=103184 fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191 fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232 fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927 fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108 fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363 fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411 fdo#105682 https://bugs.freedesktop.org/show_bug.cgi?id=105682 fdo#105683 https://bugs.freedesktop.org/show_bug.cgi?id=105683 fdo#105748 https://bugs.freedesktop.org/show_bug.cgi?id=105748 fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763 fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538 fdo#106885 https://bugs.freedesktop.org/show_bug.cgi?id=106885 fdo#107773 https://bugs.freedesktop.org/show_bug.cgi?id=107773 fdo#107791 https://bugs.freedesktop.org/show_bug.cgi?id=107791 fdo#107807 https://bugs.freedesktop.org/show_bug.cgi?id=107807 fdo#107815 https://bugs.freedesktop.org/show_bug.cgi?id=107815 fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956 fdo#108073 https://bugs.freedesktop.org/show_bug.cgi?id=108073 fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145 fdo#108146 https://bugs.freedesktop.org/show_bug.cgi?id=108146 fdo#108490 https://bugs.freedesktop.org/show_bug.cgi?id=108490 fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912 == Participating hosts (6 -> 6) == No changes in participating hosts == Build changes == * Linux: CI_DRM_5020 -> Patchwork_10542 CI_DRM_5020: 95151c25e0433a2fe771b8bc272f3f8fb54a7e27 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_4686: 741bf7064c467df725c14cc0b3b8b50436f9ee09 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_10542: 9153e6ff86f14e84ef9b9e5aae8103c407e606f1 @ git://anongit.freedesktop.org/gfx-ci/linux piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10542/shards.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2018-10-24 7:34 UTC | newest] Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-10-23 9:22 [PATCH v5 0/4] Enabling the IGT for HDCP1.4 Ramalingam C 2018-10-23 9:22 ` [PATCH v5 1/4] drm/i915: Pullout the bksv read and validation Ramalingam C 2018-10-23 9:22 ` [PATCH v5 2/4] drm/i915: hdcp_check_link only on CP_IRQ Ramalingam C 2018-10-23 9:22 ` [PATCH v5 3/4] drm/i915/debugfs: hdcp capability of a sink Ramalingam C 2018-10-23 14:04 ` Daniel Vetter 2018-10-23 9:22 ` [PATCH v5 4/4] drm/i915: Move the DDC/AUX failure msgs to debug log Ramalingam C 2018-10-23 10:41 ` [PATCH v6] " Ramalingam C 2018-10-23 14:05 ` Daniel Vetter 2018-10-24 7:34 ` Daniel Vetter 2018-10-23 9:37 ` ✗ Fi.CI.CHECKPATCH: warning for Enabling the IGT for HDCP1.4 (rev5) Patchwork 2018-10-23 10:02 ` ✗ Fi.CI.BAT: failure " Patchwork 2018-10-23 11:17 ` ✗ Fi.CI.CHECKPATCH: warning for Enabling the IGT for HDCP1.4 (rev6) Patchwork 2018-10-23 11:39 ` ✓ Fi.CI.BAT: success " Patchwork 2018-10-23 14:07 ` ✗ Fi.CI.IGT: failure " Patchwork
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.