* [Intel-gfx] [PATCH 1/2] drm/i915/dp: Remove aux xfer timeout debug message @ 2020-12-30 10:48 Chris Wilson 2020-12-30 10:48 ` [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector Chris Wilson ` (3 more replies) 0 siblings, 4 replies; 9+ messages in thread From: Chris Wilson @ 2020-12-30 10:48 UTC (permalink / raw) To: intel-gfx; +Cc: Chris Wilson The timeouts are frequent and expected. We will complain if we retry so often as to lose patience and give up, so the cacophony from individual complaints is redundant. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- drivers/gpu/drm/i915/display/intel_dp.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index f0e8aaac413c..357f7921e070 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -1613,8 +1613,6 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, /* Timeouts occur when the device isn't connected, so they're * "normal" -- don't fill the kernel log with these */ if (status & DP_AUX_CH_CTL_TIME_OUT_ERROR) { - drm_dbg_kms(&i915->drm, "%s: timeout (status 0x%08x)\n", - intel_dp->aux.name, status); ret = -ETIMEDOUT; goto out; } -- 2.20.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector 2020-12-30 10:48 [Intel-gfx] [PATCH 1/2] drm/i915/dp: Remove aux xfer timeout debug message Chris Wilson @ 2020-12-30 10:48 ` Chris Wilson 2020-12-30 16:59 ` Imre Deak 2020-12-30 12:59 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message Patchwork ` (2 subsequent siblings) 3 siblings, 1 reply; 9+ messages in thread From: Chris Wilson @ 2020-12-30 10:48 UTC (permalink / raw) To: intel-gfx; +Cc: Chris Wilson Since multiple connectors may run intel_dp_aux_xfer conncurrently, a single global pm_qos does not suffice. (One connector may disable the dma-latency boost prematurely while the second is still depending on it.) Instead of a single global pm_qos, track the pm_qos request for each intel_dp. Fixes: 9ee32fea5fe8 ("drm/i915: irq-drive the dp aux communication") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Imre Deak <imre.deak@intel.com> --- .../gpu/drm/i915/display/intel_display_types.h | 3 +++ drivers/gpu/drm/i915/display/intel_dp.c | 16 +++++++++++++--- drivers/gpu/drm/i915/i915_drv.c | 5 ----- drivers/gpu/drm/i915/i915_drv.h | 3 --- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h index b86ba1bdbaa3..1067bd073c95 100644 --- a/drivers/gpu/drm/i915/display/intel_display_types.h +++ b/drivers/gpu/drm/i915/display/intel_display_types.h @@ -1463,6 +1463,9 @@ struct intel_dp { bool rgb_to_ycbcr; } dfp; + /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ + struct pm_qos_request pm_qos; + /* Display stream compression testing */ bool force_dsc_en; diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index 357f7921e070..f08e5f1f463d 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -1512,7 +1512,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, * lowest possible wakeup latency and so prevent the cpu from going into * deep sleep states. */ - cpu_latency_qos_update_request(&i915->pm_qos, 0); + cpu_latency_qos_update_request(&intel_dp->pm_qos, 0); intel_dp_check_edp(intel_dp); @@ -1643,7 +1643,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, ret = recv_bytes; out: - cpu_latency_qos_update_request(&i915->pm_qos, PM_QOS_DEFAULT_VALUE); + cpu_latency_qos_update_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); if (vdd) edp_panel_vdd_off(intel_dp, false); @@ -7527,6 +7527,14 @@ static int intel_dp_connector_atomic_check(struct drm_connector *conn, return intel_modeset_synced_crtcs(state, conn); } +static void intel_dp_connector_destroy(struct drm_connector *connector) +{ + struct intel_dp *intel_dp = intel_attached_dp(to_intel_connector(connector)); + + cpu_latency_qos_remove_request(&intel_dp->pm_qos); + + intel_connector_destroy(connector); +} static const struct drm_connector_funcs intel_dp_connector_funcs = { .force = intel_dp_force, @@ -7535,7 +7543,7 @@ static const struct drm_connector_funcs intel_dp_connector_funcs = { .atomic_set_property = intel_digital_connector_atomic_set_property, .late_register = intel_dp_connector_register, .early_unregister = intel_dp_connector_unregister, - .destroy = intel_connector_destroy, + .destroy = intel_dp_connector_destroy, .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, .atomic_duplicate_state = intel_digital_connector_duplicate_state, }; @@ -8621,6 +8629,8 @@ intel_dp_init_connector(struct intel_digital_port *dig_port, intel_dp->frl.is_trained = false; intel_dp->frl.trained_rate_gbps = 0; + cpu_latency_qos_add_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); + return true; fail: diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index 5708e11d917b..249f765993f7 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -578,8 +578,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) pci_set_master(pdev); - cpu_latency_qos_add_request(&dev_priv->pm_qos, PM_QOS_DEFAULT_VALUE); - intel_gt_init_workarounds(dev_priv); /* On the 945G/GM, the chipset reports the MSI capability on the @@ -626,7 +624,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) err_msi: if (pdev->msi_enabled) pci_disable_msi(pdev); - cpu_latency_qos_remove_request(&dev_priv->pm_qos); err_mem_regions: intel_memory_regions_driver_release(dev_priv); err_ggtt: @@ -648,8 +645,6 @@ static void i915_driver_hw_remove(struct drm_i915_private *dev_priv) if (pdev->msi_enabled) pci_disable_msi(pdev); - - cpu_latency_qos_remove_request(&dev_priv->pm_qos); } /** diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index e38a10d5c128..5e5bcef20e33 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -891,9 +891,6 @@ struct drm_i915_private { bool display_irqs_enabled; - /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ - struct pm_qos_request pm_qos; - /* Sideband mailbox protection */ struct mutex sb_lock; struct pm_qos_request sb_qos; -- 2.20.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector 2020-12-30 10:48 ` [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector Chris Wilson @ 2020-12-30 16:59 ` Imre Deak 2020-12-30 17:07 ` [Intel-gfx] [PATCH v2] " Chris Wilson 0 siblings, 1 reply; 9+ messages in thread From: Imre Deak @ 2020-12-30 16:59 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx On Wed, Dec 30, 2020 at 10:48:34AM +0000, Chris Wilson wrote: > Since multiple connectors may run intel_dp_aux_xfer conncurrently, a > single global pm_qos does not suffice. (One connector may disable the > dma-latency boost prematurely while the second is still depending on > it.) Instead of a single global pm_qos, track the pm_qos request for > each intel_dp. > > Fixes: 9ee32fea5fe8 ("drm/i915: irq-drive the dp aux communication") > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > Cc: Imre Deak <imre.deak@intel.com> Could intel_dp_aux_init/fini() be used? > --- > .../gpu/drm/i915/display/intel_display_types.h | 3 +++ > drivers/gpu/drm/i915/display/intel_dp.c | 16 +++++++++++++--- > drivers/gpu/drm/i915/i915_drv.c | 5 ----- > drivers/gpu/drm/i915/i915_drv.h | 3 --- > 4 files changed, 16 insertions(+), 11 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h > index b86ba1bdbaa3..1067bd073c95 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_types.h > +++ b/drivers/gpu/drm/i915/display/intel_display_types.h > @@ -1463,6 +1463,9 @@ struct intel_dp { > bool rgb_to_ycbcr; > } dfp; > > + /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ > + struct pm_qos_request pm_qos; > + > /* Display stream compression testing */ > bool force_dsc_en; > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > index 357f7921e070..f08e5f1f463d 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -1512,7 +1512,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, > * lowest possible wakeup latency and so prevent the cpu from going into > * deep sleep states. > */ > - cpu_latency_qos_update_request(&i915->pm_qos, 0); > + cpu_latency_qos_update_request(&intel_dp->pm_qos, 0); > > intel_dp_check_edp(intel_dp); > > @@ -1643,7 +1643,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, > > ret = recv_bytes; > out: > - cpu_latency_qos_update_request(&i915->pm_qos, PM_QOS_DEFAULT_VALUE); > + cpu_latency_qos_update_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); > > if (vdd) > edp_panel_vdd_off(intel_dp, false); > @@ -7527,6 +7527,14 @@ static int intel_dp_connector_atomic_check(struct drm_connector *conn, > > return intel_modeset_synced_crtcs(state, conn); > } > +static void intel_dp_connector_destroy(struct drm_connector *connector) > +{ > + struct intel_dp *intel_dp = intel_attached_dp(to_intel_connector(connector)); > + > + cpu_latency_qos_remove_request(&intel_dp->pm_qos); > + > + intel_connector_destroy(connector); > +} > > static const struct drm_connector_funcs intel_dp_connector_funcs = { > .force = intel_dp_force, > @@ -7535,7 +7543,7 @@ static const struct drm_connector_funcs intel_dp_connector_funcs = { > .atomic_set_property = intel_digital_connector_atomic_set_property, > .late_register = intel_dp_connector_register, > .early_unregister = intel_dp_connector_unregister, > - .destroy = intel_connector_destroy, > + .destroy = intel_dp_connector_destroy, > .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, > .atomic_duplicate_state = intel_digital_connector_duplicate_state, > }; > @@ -8621,6 +8629,8 @@ intel_dp_init_connector(struct intel_digital_port *dig_port, > intel_dp->frl.is_trained = false; > intel_dp->frl.trained_rate_gbps = 0; > > + cpu_latency_qos_add_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); > + > return true; > > fail: > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c > index 5708e11d917b..249f765993f7 100644 > --- a/drivers/gpu/drm/i915/i915_drv.c > +++ b/drivers/gpu/drm/i915/i915_drv.c > @@ -578,8 +578,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) > > pci_set_master(pdev); > > - cpu_latency_qos_add_request(&dev_priv->pm_qos, PM_QOS_DEFAULT_VALUE); > - > intel_gt_init_workarounds(dev_priv); > > /* On the 945G/GM, the chipset reports the MSI capability on the > @@ -626,7 +624,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) > err_msi: > if (pdev->msi_enabled) > pci_disable_msi(pdev); > - cpu_latency_qos_remove_request(&dev_priv->pm_qos); > err_mem_regions: > intel_memory_regions_driver_release(dev_priv); > err_ggtt: > @@ -648,8 +645,6 @@ static void i915_driver_hw_remove(struct drm_i915_private *dev_priv) > > if (pdev->msi_enabled) > pci_disable_msi(pdev); > - > - cpu_latency_qos_remove_request(&dev_priv->pm_qos); > } > > /** > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index e38a10d5c128..5e5bcef20e33 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -891,9 +891,6 @@ struct drm_i915_private { > > bool display_irqs_enabled; > > - /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ > - struct pm_qos_request pm_qos; > - > /* Sideband mailbox protection */ > struct mutex sb_lock; > struct pm_qos_request sb_qos; > -- > 2.20.1 > _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH v2] drm/i915/dp: Track pm_qos per connector 2020-12-30 16:59 ` Imre Deak @ 2020-12-30 17:07 ` Chris Wilson 2020-12-30 17:18 ` Imre Deak 0 siblings, 1 reply; 9+ messages in thread From: Chris Wilson @ 2020-12-30 17:07 UTC (permalink / raw) To: intel-gfx; +Cc: Chris Wilson Since multiple connectors may run intel_dp_aux_xfer conncurrently, a single global pm_qos does not suffice. (One connector may disable the dma-latency boost prematurely while the second is still depending on it.) Instead of a single global pm_qos, track the pm_qos request for each intel_dp. v2: Move the pm_qos setup/teardown to intel_dp_aux_init/fini Fixes: 9ee32fea5fe8 ("drm/i915: irq-drive the dp aux communication") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Imre Deak <imre.deak@intel.com> --- drivers/gpu/drm/i915/display/intel_display_types.h | 3 +++ drivers/gpu/drm/i915/display/intel_dp.c | 6 ++++-- drivers/gpu/drm/i915/i915_drv.c | 5 ----- drivers/gpu/drm/i915/i915_drv.h | 3 --- 4 files changed, 7 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h index b86ba1bdbaa3..1067bd073c95 100644 --- a/drivers/gpu/drm/i915/display/intel_display_types.h +++ b/drivers/gpu/drm/i915/display/intel_display_types.h @@ -1463,6 +1463,9 @@ struct intel_dp { bool rgb_to_ycbcr; } dfp; + /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ + struct pm_qos_request pm_qos; + /* Display stream compression testing */ bool force_dsc_en; diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index 357f7921e070..dafb1334f91a 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -1512,7 +1512,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, * lowest possible wakeup latency and so prevent the cpu from going into * deep sleep states. */ - cpu_latency_qos_update_request(&i915->pm_qos, 0); + cpu_latency_qos_update_request(&intel_dp->pm_qos, 0); intel_dp_check_edp(intel_dp); @@ -1643,7 +1643,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, ret = recv_bytes; out: - cpu_latency_qos_update_request(&i915->pm_qos, PM_QOS_DEFAULT_VALUE); + cpu_latency_qos_update_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); if (vdd) edp_panel_vdd_off(intel_dp, false); @@ -1919,6 +1919,7 @@ static i915_reg_t tgl_aux_data_reg(struct intel_dp *intel_dp, int index) static void intel_dp_aux_fini(struct intel_dp *intel_dp) { + cpu_latency_qos_remove_request(&intel_dp->pm_qos); kfree(intel_dp->aux.name); } @@ -1971,6 +1972,7 @@ intel_dp_aux_init(struct intel_dp *intel_dp) encoder->base.name); intel_dp->aux.transfer = intel_dp_aux_transfer; + cpu_latency_qos_add_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); } bool intel_dp_source_supports_hbr2(struct intel_dp *intel_dp) diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index 5708e11d917b..249f765993f7 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -578,8 +578,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) pci_set_master(pdev); - cpu_latency_qos_add_request(&dev_priv->pm_qos, PM_QOS_DEFAULT_VALUE); - intel_gt_init_workarounds(dev_priv); /* On the 945G/GM, the chipset reports the MSI capability on the @@ -626,7 +624,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) err_msi: if (pdev->msi_enabled) pci_disable_msi(pdev); - cpu_latency_qos_remove_request(&dev_priv->pm_qos); err_mem_regions: intel_memory_regions_driver_release(dev_priv); err_ggtt: @@ -648,8 +645,6 @@ static void i915_driver_hw_remove(struct drm_i915_private *dev_priv) if (pdev->msi_enabled) pci_disable_msi(pdev); - - cpu_latency_qos_remove_request(&dev_priv->pm_qos); } /** diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index e38a10d5c128..5e5bcef20e33 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -891,9 +891,6 @@ struct drm_i915_private { bool display_irqs_enabled; - /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ - struct pm_qos_request pm_qos; - /* Sideband mailbox protection */ struct mutex sb_lock; struct pm_qos_request sb_qos; -- 2.20.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [Intel-gfx] [PATCH v2] drm/i915/dp: Track pm_qos per connector 2020-12-30 17:07 ` [Intel-gfx] [PATCH v2] " Chris Wilson @ 2020-12-30 17:18 ` Imre Deak 0 siblings, 0 replies; 9+ messages in thread From: Imre Deak @ 2020-12-30 17:18 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx On Wed, Dec 30, 2020 at 05:07:34PM +0000, Chris Wilson wrote: > Since multiple connectors may run intel_dp_aux_xfer conncurrently, a > single global pm_qos does not suffice. (One connector may disable the > dma-latency boost prematurely while the second is still depending on > it.) Instead of a single global pm_qos, track the pm_qos request for > each intel_dp. > > v2: Move the pm_qos setup/teardown to intel_dp_aux_init/fini > > Fixes: 9ee32fea5fe8 ("drm/i915: irq-drive the dp aux communication") > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > Cc: Imre Deak <imre.deak@intel.com> Reviewed-by: Imre Deak <imre.deak@intel.com> > --- > drivers/gpu/drm/i915/display/intel_display_types.h | 3 +++ > drivers/gpu/drm/i915/display/intel_dp.c | 6 ++++-- > drivers/gpu/drm/i915/i915_drv.c | 5 ----- > drivers/gpu/drm/i915/i915_drv.h | 3 --- > 4 files changed, 7 insertions(+), 10 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h > index b86ba1bdbaa3..1067bd073c95 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_types.h > +++ b/drivers/gpu/drm/i915/display/intel_display_types.h > @@ -1463,6 +1463,9 @@ struct intel_dp { > bool rgb_to_ycbcr; > } dfp; > > + /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ > + struct pm_qos_request pm_qos; > + > /* Display stream compression testing */ > bool force_dsc_en; > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > index 357f7921e070..dafb1334f91a 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -1512,7 +1512,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, > * lowest possible wakeup latency and so prevent the cpu from going into > * deep sleep states. > */ > - cpu_latency_qos_update_request(&i915->pm_qos, 0); > + cpu_latency_qos_update_request(&intel_dp->pm_qos, 0); > > intel_dp_check_edp(intel_dp); > > @@ -1643,7 +1643,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, > > ret = recv_bytes; > out: > - cpu_latency_qos_update_request(&i915->pm_qos, PM_QOS_DEFAULT_VALUE); > + cpu_latency_qos_update_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); > > if (vdd) > edp_panel_vdd_off(intel_dp, false); > @@ -1919,6 +1919,7 @@ static i915_reg_t tgl_aux_data_reg(struct intel_dp *intel_dp, int index) > static void > intel_dp_aux_fini(struct intel_dp *intel_dp) > { > + cpu_latency_qos_remove_request(&intel_dp->pm_qos); > kfree(intel_dp->aux.name); > } > > @@ -1971,6 +1972,7 @@ intel_dp_aux_init(struct intel_dp *intel_dp) > encoder->base.name); > > intel_dp->aux.transfer = intel_dp_aux_transfer; > + cpu_latency_qos_add_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); > } > > bool intel_dp_source_supports_hbr2(struct intel_dp *intel_dp) > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c > index 5708e11d917b..249f765993f7 100644 > --- a/drivers/gpu/drm/i915/i915_drv.c > +++ b/drivers/gpu/drm/i915/i915_drv.c > @@ -578,8 +578,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) > > pci_set_master(pdev); > > - cpu_latency_qos_add_request(&dev_priv->pm_qos, PM_QOS_DEFAULT_VALUE); > - > intel_gt_init_workarounds(dev_priv); > > /* On the 945G/GM, the chipset reports the MSI capability on the > @@ -626,7 +624,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) > err_msi: > if (pdev->msi_enabled) > pci_disable_msi(pdev); > - cpu_latency_qos_remove_request(&dev_priv->pm_qos); > err_mem_regions: > intel_memory_regions_driver_release(dev_priv); > err_ggtt: > @@ -648,8 +645,6 @@ static void i915_driver_hw_remove(struct drm_i915_private *dev_priv) > > if (pdev->msi_enabled) > pci_disable_msi(pdev); > - > - cpu_latency_qos_remove_request(&dev_priv->pm_qos); > } > > /** > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index e38a10d5c128..5e5bcef20e33 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -891,9 +891,6 @@ struct drm_i915_private { > > bool display_irqs_enabled; > > - /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ > - struct pm_qos_request pm_qos; > - > /* Sideband mailbox protection */ > struct mutex sb_lock; > struct pm_qos_request sb_qos; > -- > 2.20.1 > _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message 2020-12-30 10:48 [Intel-gfx] [PATCH 1/2] drm/i915/dp: Remove aux xfer timeout debug message Chris Wilson 2020-12-30 10:48 ` [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector Chris Wilson @ 2020-12-30 12:59 ` Patchwork 2020-12-30 13:15 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork 2020-12-30 20:14 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message (rev2) Patchwork 3 siblings, 0 replies; 9+ messages in thread From: Patchwork @ 2020-12-30 12:59 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message URL : https://patchwork.freedesktop.org/series/85315/ State : warning == Summary == $ dim checkpatch origin/drm-tip d3af34a8e551 drm/i915/dp: Remove aux xfer timeout debug message e8faa209ee7a drm/i915/dp: Track pm_qos per connector -:60: CHECK:LINE_SPACING: Please use a blank line after function/struct/union/enum declarations #60: FILE: drivers/gpu/drm/i915/display/intel_dp.c:7530: } +static void intel_dp_connector_destroy(struct drm_connector *connector) total: 0 errors, 0 warnings, 1 checks, 87 lines checked _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message 2020-12-30 10:48 [Intel-gfx] [PATCH 1/2] drm/i915/dp: Remove aux xfer timeout debug message Chris Wilson 2020-12-30 10:48 ` [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector Chris Wilson 2020-12-30 12:59 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message Patchwork @ 2020-12-30 13:15 ` Patchwork 2020-12-30 20:14 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message (rev2) Patchwork 3 siblings, 0 replies; 9+ messages in thread From: Patchwork @ 2020-12-30 13:15 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx [-- Attachment #1.1: Type: text/plain, Size: 5774 bytes --] == Series Details == Series: series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message URL : https://patchwork.freedesktop.org/series/85315/ State : failure == Summary == CI Bug Log - changes from CI_DRM_9533 -> Patchwork_19228 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with Patchwork_19228 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_19228, 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_19228/index.html Known issues ------------ Here are the changes found in Patchwork_19228 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@runner@aborted: - fi-bsw-kefka: NOTRUN -> [FAIL][1] ([i915#1302]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-bsw-kefka/igt@runner@aborted.html - fi-tgl-y: NOTRUN -> [FAIL][2] ([i915#2522]) [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-tgl-y/igt@runner@aborted.html - fi-skl-6600u: NOTRUN -> [FAIL][3] ([i915#2295]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-skl-6600u/igt@runner@aborted.html - fi-cfl-8109u: NOTRUN -> [FAIL][4] ([i915#2295] / [i915#483] / [k.org#202107] / [k.org#202109]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-cfl-8109u/igt@runner@aborted.html - fi-icl-u2: NOTRUN -> [FAIL][5] ([i915#1569] / [i915#2295] / [i915#2724] / [k.org#202973]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-icl-u2/igt@runner@aborted.html - fi-kbl-r: NOTRUN -> [FAIL][6] ([i915#1569] / [i915#192] / [i915#193] / [i915#194] / [i915#2295]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-kbl-r/igt@runner@aborted.html - fi-kbl-soraka: NOTRUN -> [FAIL][7] ([i915#1569] / [i915#192] / [i915#193] / [i915#194] / [i915#2295]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-kbl-soraka/igt@runner@aborted.html - fi-kbl-7500u: NOTRUN -> [FAIL][8] ([i915#1569] / [i915#192] / [i915#193] / [i915#194] / [i915#2295] / [i915#483]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-kbl-7500u/igt@runner@aborted.html - fi-cml-u2: NOTRUN -> [FAIL][9] ([i915#2295]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-cml-u2/igt@runner@aborted.html - fi-cml-s: NOTRUN -> [FAIL][10] ([i915#2295]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-cml-s/igt@runner@aborted.html - fi-icl-y: NOTRUN -> [FAIL][11] ([i915#1569] / [i915#2295] / [i915#2724] / [i915#483]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-icl-y/igt@runner@aborted.html - fi-tgl-u2: NOTRUN -> [FAIL][12] ([i915#2522]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-tgl-u2/igt@runner@aborted.html #### Warnings #### * igt@runner@aborted: - fi-kbl-8809g: [FAIL][13] ([i915#1186] / [i915#2426]) -> [FAIL][14] ([i915#1569] / [i915#192] / [i915#193] / [i915#194] / [i915#2295]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9533/fi-kbl-8809g/igt@runner@aborted.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/fi-kbl-8809g/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). [i915#1186]: https://gitlab.freedesktop.org/drm/intel/issues/1186 [i915#1302]: https://gitlab.freedesktop.org/drm/intel/issues/1302 [i915#1569]: https://gitlab.freedesktop.org/drm/intel/issues/1569 [i915#192]: https://gitlab.freedesktop.org/drm/intel/issues/192 [i915#193]: https://gitlab.freedesktop.org/drm/intel/issues/193 [i915#194]: https://gitlab.freedesktop.org/drm/intel/issues/194 [i915#2295]: https://gitlab.freedesktop.org/drm/intel/issues/2295 [i915#2426]: https://gitlab.freedesktop.org/drm/intel/issues/2426 [i915#2522]: https://gitlab.freedesktop.org/drm/intel/issues/2522 [i915#2724]: https://gitlab.freedesktop.org/drm/intel/issues/2724 [i915#483]: https://gitlab.freedesktop.org/drm/intel/issues/483 [k.org#202107]: https://bugzilla.kernel.org/show_bug.cgi?id=202107 [k.org#202109]: https://bugzilla.kernel.org/show_bug.cgi?id=202109 [k.org#202973]: https://bugzilla.kernel.org/show_bug.cgi?id=202973 Participating hosts (42 -> 19) ------------------------------ ERROR: It appears as if the changes made in Patchwork_19228 prevented too many machines from booting. Missing (23): fi-apl-guc fi-snb-2520m fi-snb-2600 fi-bxt-dsi fi-bdw-5557u fi-bsw-n3050 fi-glk-dsi fi-ilk-650 fi-ctg-p8600 fi-hsw-4770 fi-ivb-3770 fi-elk-e7500 fi-bsw-nick fi-ilk-m540 fi-tgl-dsi fi-skl-guc fi-cfl-8700k fi-hsw-4200u fi-bsw-cyan fi-cfl-guc fi-kbl-guc fi-kbl-x1275 fi-bdw-samus Build changes ------------- * Linux: CI_DRM_9533 -> Patchwork_19228 CI-20190529: 20190529 CI_DRM_9533: 1ebc67e5e636a2422ac68d93b87e236dcf645da0 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5928: 7813bb74aec408055d564fa6a270526822cfbc0e @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_19228: e8faa209ee7ab1838b9c686b9c887b41a9798f6c @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == e8faa209ee7a drm/i915/dp: Track pm_qos per connector d3af34a8e551 drm/i915/dp: Remove aux xfer timeout debug message == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19228/index.html [-- Attachment #1.2: Type: text/html, Size: 8318 bytes --] [-- Attachment #2: Type: text/plain, Size: 160 bytes --] _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message (rev2) 2020-12-30 10:48 [Intel-gfx] [PATCH 1/2] drm/i915/dp: Remove aux xfer timeout debug message Chris Wilson ` (2 preceding siblings ...) 2020-12-30 13:15 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork @ 2020-12-30 20:14 ` Patchwork 3 siblings, 0 replies; 9+ messages in thread From: Patchwork @ 2020-12-30 20:14 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx [-- Attachment #1.1: Type: text/plain, Size: 8215 bytes --] == Series Details == Series: series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message (rev2) URL : https://patchwork.freedesktop.org/series/85315/ State : failure == Summary == CI Bug Log - changes from CI_DRM_9534 -> Patchwork_19231 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with Patchwork_19231 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_19231, 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_19231/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in Patchwork_19231: ### IGT changes ### #### Possible regressions #### * igt@core_hotunplug@unbind-rebind: - fi-tgl-u2: [PASS][1] -> [DMESG-WARN][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-tgl-u2/igt@core_hotunplug@unbind-rebind.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-tgl-u2/igt@core_hotunplug@unbind-rebind.html - fi-cfl-guc: [PASS][3] -> [DMESG-WARN][4] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-cfl-guc/igt@core_hotunplug@unbind-rebind.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-cfl-guc/igt@core_hotunplug@unbind-rebind.html - fi-cml-s: [PASS][5] -> [DMESG-WARN][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-cml-s/igt@core_hotunplug@unbind-rebind.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-cml-s/igt@core_hotunplug@unbind-rebind.html - fi-cfl-8700k: [PASS][7] -> [DMESG-WARN][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-cfl-8700k/igt@core_hotunplug@unbind-rebind.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-cfl-8700k/igt@core_hotunplug@unbind-rebind.html - fi-icl-u2: [PASS][9] -> [DMESG-WARN][10] [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-icl-u2/igt@core_hotunplug@unbind-rebind.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-icl-u2/igt@core_hotunplug@unbind-rebind.html - fi-kbl-guc: [PASS][11] -> [DMESG-WARN][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-kbl-guc/igt@core_hotunplug@unbind-rebind.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-kbl-guc/igt@core_hotunplug@unbind-rebind.html - fi-glk-dsi: [PASS][13] -> [DMESG-WARN][14] [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-glk-dsi/igt@core_hotunplug@unbind-rebind.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-glk-dsi/igt@core_hotunplug@unbind-rebind.html #### Warnings #### * igt@core_hotunplug@unbind-rebind: - fi-bdw-5557u: [WARN][15] ([i915#2283]) -> [DMESG-WARN][16] [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-bdw-5557u/igt@core_hotunplug@unbind-rebind.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-bdw-5557u/igt@core_hotunplug@unbind-rebind.html #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * igt@core_hotunplug@unbind-rebind: - {fi-ehl-1}: [PASS][17] -> [DMESG-WARN][18] [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-ehl-1/igt@core_hotunplug@unbind-rebind.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-ehl-1/igt@core_hotunplug@unbind-rebind.html Known issues ------------ Here are the changes found in Patchwork_19231 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@amdgpu/amd_basic@cs-gfx: - fi-kbl-soraka: NOTRUN -> [SKIP][19] ([fdo#109271]) +14 similar issues [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-kbl-soraka/igt@amdgpu/amd_basic@cs-gfx.html * igt@debugfs_test@read_all_entries: - fi-tgl-y: [PASS][20] -> [DMESG-WARN][21] ([i915#402]) +1 similar issue [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-tgl-y/igt@debugfs_test@read_all_entries.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-tgl-y/igt@debugfs_test@read_all_entries.html * igt@runner@aborted: - fi-cfl-8700k: NOTRUN -> [FAIL][22] ([i915#2283] / [i915#2295] / [i915#483]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-cfl-8700k/igt@runner@aborted.html - fi-icl-u2: NOTRUN -> [FAIL][23] ([i915#2283] / [i915#2295] / [i915#2724]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-icl-u2/igt@runner@aborted.html - fi-glk-dsi: NOTRUN -> [FAIL][24] ([i915#2283] / [i915#2295] / [k.org#202321]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-glk-dsi/igt@runner@aborted.html - fi-bdw-5557u: NOTRUN -> [FAIL][25] ([i915#483]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-bdw-5557u/igt@runner@aborted.html - fi-kbl-guc: NOTRUN -> [FAIL][26] ([i915#2283] / [i915#2295]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-kbl-guc/igt@runner@aborted.html - fi-cml-s: NOTRUN -> [FAIL][27] ([i915#2283] / [i915#2295]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-cml-s/igt@runner@aborted.html - fi-cfl-guc: NOTRUN -> [FAIL][28] ([i915#2283] / [i915#2295] / [i915#483]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-cfl-guc/igt@runner@aborted.html - fi-tgl-u2: NOTRUN -> [FAIL][29] ([i915#1602]) [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-tgl-u2/igt@runner@aborted.html #### Possible fixes #### * igt@gem_basic@create-fd-close: - fi-tgl-y: [DMESG-WARN][30] ([i915#402]) -> [PASS][31] +2 similar issues [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-tgl-y/igt@gem_basic@create-fd-close.html [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-tgl-y/igt@gem_basic@create-fd-close.html * igt@gem_exec_suspend@basic-s3: - fi-tgl-y: [DMESG-WARN][32] ([i915#2411] / [i915#402]) -> [PASS][33] [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9534/fi-tgl-y/igt@gem_exec_suspend@basic-s3.html [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/fi-tgl-y/igt@gem_exec_suspend@basic-s3.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602 [i915#2283]: https://gitlab.freedesktop.org/drm/intel/issues/2283 [i915#2295]: https://gitlab.freedesktop.org/drm/intel/issues/2295 [i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411 [i915#2724]: https://gitlab.freedesktop.org/drm/intel/issues/2724 [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402 [i915#483]: https://gitlab.freedesktop.org/drm/intel/issues/483 [k.org#202321]: https://bugzilla.kernel.org/show_bug.cgi?id=202321 Participating hosts (42 -> 37) ------------------------------ Missing (5): fi-ilk-m540 fi-hsw-4200u fi-bsw-cyan fi-ctg-p8600 fi-bdw-samus Build changes ------------- * Linux: CI_DRM_9534 -> Patchwork_19231 CI-20190529: 20190529 CI_DRM_9534: 797de7a6fea9a997e5b529af8994b2f251779d0a @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5930: 9efe3bfcb2b1c3613dddc8761425aa6943fa162d @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_19231: c0c01c09518595812aea56d8fc292fda791f43ad @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == c0c01c095185 drm/i915/dp: Track pm_qos per connector 46f8fbeb0028 drm/i915/dp: Remove aux xfer timeout debug message == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19231/index.html [-- Attachment #1.2: Type: text/html, Size: 10211 bytes --] [-- Attachment #2: Type: text/plain, Size: 160 bytes --] _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH 1/2] pm-qos @ 2020-12-30 10:46 Chris Wilson 2020-12-30 10:46 ` [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector Chris Wilson 0 siblings, 1 reply; 9+ messages in thread From: Chris Wilson @ 2020-12-30 10:46 UTC (permalink / raw) To: intel-gfx; +Cc: Chris Wilson --- drivers/gpu/drm/i915/display/intel_display_types.h | 3 +++ drivers/gpu/drm/i915/i915_drv.h | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h index b86ba1bdbaa3..1067bd073c95 100644 --- a/drivers/gpu/drm/i915/display/intel_display_types.h +++ b/drivers/gpu/drm/i915/display/intel_display_types.h @@ -1463,6 +1463,9 @@ struct intel_dp { bool rgb_to_ycbcr; } dfp; + /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ + struct pm_qos_request pm_qos; + /* Display stream compression testing */ bool force_dsc_en; diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index e38a10d5c128..5e5bcef20e33 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -891,9 +891,6 @@ struct drm_i915_private { bool display_irqs_enabled; - /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ - struct pm_qos_request pm_qos; - /* Sideband mailbox protection */ struct mutex sb_lock; struct pm_qos_request sb_qos; -- 2.20.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector 2020-12-30 10:46 [Intel-gfx] [PATCH 1/2] pm-qos Chris Wilson @ 2020-12-30 10:46 ` Chris Wilson 0 siblings, 0 replies; 9+ messages in thread From: Chris Wilson @ 2020-12-30 10:46 UTC (permalink / raw) To: intel-gfx; +Cc: Chris Wilson Since multiple connectors may run intel_dp_aux_xfer conncurrently, a single global pm_qos does not suffice. (One connector may disable the dma-latency boost prematurely while the second is still depending on it.) Instead of a single global pm_qos, track the pm_qos request for each intel_dp. Fixes: 9ee32fea5fe8 ("drm/i915: irq-drive the dp aux communication") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Imre Deak <imre.deak@intel.com> --- drivers/gpu/drm/i915/display/intel_dp.c | 16 +++++++++++++--- drivers/gpu/drm/i915/i915_drv.c | 5 ----- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index 357f7921e070..f08e5f1f463d 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -1512,7 +1512,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, * lowest possible wakeup latency and so prevent the cpu from going into * deep sleep states. */ - cpu_latency_qos_update_request(&i915->pm_qos, 0); + cpu_latency_qos_update_request(&intel_dp->pm_qos, 0); intel_dp_check_edp(intel_dp); @@ -1643,7 +1643,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, ret = recv_bytes; out: - cpu_latency_qos_update_request(&i915->pm_qos, PM_QOS_DEFAULT_VALUE); + cpu_latency_qos_update_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); if (vdd) edp_panel_vdd_off(intel_dp, false); @@ -7527,6 +7527,14 @@ static int intel_dp_connector_atomic_check(struct drm_connector *conn, return intel_modeset_synced_crtcs(state, conn); } +static void intel_dp_connector_destroy(struct drm_connector *connector) +{ + struct intel_dp *intel_dp = intel_attached_dp(to_intel_connector(connector)); + + cpu_latency_qos_remove_request(&intel_dp->pm_qos); + + intel_connector_destroy(connector); +} static const struct drm_connector_funcs intel_dp_connector_funcs = { .force = intel_dp_force, @@ -7535,7 +7543,7 @@ static const struct drm_connector_funcs intel_dp_connector_funcs = { .atomic_set_property = intel_digital_connector_atomic_set_property, .late_register = intel_dp_connector_register, .early_unregister = intel_dp_connector_unregister, - .destroy = intel_connector_destroy, + .destroy = intel_dp_connector_destroy, .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, .atomic_duplicate_state = intel_digital_connector_duplicate_state, }; @@ -8621,6 +8629,8 @@ intel_dp_init_connector(struct intel_digital_port *dig_port, intel_dp->frl.is_trained = false; intel_dp->frl.trained_rate_gbps = 0; + cpu_latency_qos_add_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); + return true; fail: diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index 5708e11d917b..249f765993f7 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -578,8 +578,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) pci_set_master(pdev); - cpu_latency_qos_add_request(&dev_priv->pm_qos, PM_QOS_DEFAULT_VALUE); - intel_gt_init_workarounds(dev_priv); /* On the 945G/GM, the chipset reports the MSI capability on the @@ -626,7 +624,6 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv) err_msi: if (pdev->msi_enabled) pci_disable_msi(pdev); - cpu_latency_qos_remove_request(&dev_priv->pm_qos); err_mem_regions: intel_memory_regions_driver_release(dev_priv); err_ggtt: @@ -648,8 +645,6 @@ static void i915_driver_hw_remove(struct drm_i915_private *dev_priv) if (pdev->msi_enabled) pci_disable_msi(pdev); - - cpu_latency_qos_remove_request(&dev_priv->pm_qos); } /** -- 2.20.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-12-30 20:14 UTC | newest] Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-12-30 10:48 [Intel-gfx] [PATCH 1/2] drm/i915/dp: Remove aux xfer timeout debug message Chris Wilson 2020-12-30 10:48 ` [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector Chris Wilson 2020-12-30 16:59 ` Imre Deak 2020-12-30 17:07 ` [Intel-gfx] [PATCH v2] " Chris Wilson 2020-12-30 17:18 ` Imre Deak 2020-12-30 12:59 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message Patchwork 2020-12-30 13:15 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork 2020-12-30 20:14 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [1/2] drm/i915/dp: Remove aux xfer timeout debug message (rev2) Patchwork -- strict thread matches above, loose matches on Subject: below -- 2020-12-30 10:46 [Intel-gfx] [PATCH 1/2] pm-qos Chris Wilson 2020-12-30 10:46 ` [Intel-gfx] [PATCH 2/2] drm/i915/dp: Track pm_qos per connector Chris Wilson
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.