From: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
To: Ander Conselvan De Oliveira <conselvan2@gmail.com>,
intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 6/6] drm/i915: force full detect on sink count change
Date: Tue, 19 Jan 2016 14:10:07 +0530 [thread overview]
Message-ID: <569DF667.6030504@intel.com> (raw)
In-Reply-To: <1452779415.3063.17.camel@gmail.com>
On Thursday 14 January 2016 07:20 PM, Ander Conselvan De Oliveira wrote:
> On Tue, 2016-01-05 at 18:20 +0530, Shubhangi Shrivastava wrote:
>> This patch checks for changes in sink count between short pulse
>> hpds and forces full detect when there is a change.
>>
>> This will allow both detection of hotplug and unplug of panels
>> through dongles that give only short pulse for such events.
>>
>> v2: changed variable type from u8 to bool (Jani)
>> return immediately if perform_full_detect is set(Siva)
>>
>> v3: changed method of determining full detection from using
>> pointer to return code (Siva)
>>
>> Tested-by: Nathan D Ciobanu <nathan.d.ciobanu@intel.com>
>> Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
>> Signed-off-by: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
>> ---
>> drivers/gpu/drm/i915/intel_dp.c | 30 +++++++++++++++++++++++-------
>> 1 file changed, 23 insertions(+), 7 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
>> index 0d58bfd..8a659ee 100644
>> --- a/drivers/gpu/drm/i915/intel_dp.c
>> +++ b/drivers/gpu/drm/i915/intel_dp.c
>> @@ -4331,12 +4331,14 @@ intel_dp_check_link_status(struct intel_dp *intel_dp)
>> * 3. Use Link Training from 2.5.3.3 and 3.5.1.3
>> * 4. Check link status on receipt of hot-plug interrupt
>> */
>> -static void
>> +static bool
> Please expand the comment above to indicate what the return value of this
> function is supposed to mean.
>
Sure.. Will add..
>> intel_dp_short_pulse(struct intel_dp *intel_dp)
>> {
>> struct drm_device *dev = intel_dp_to_dev(intel_dp);
>> u8 sink_irq_vector;
>> u8 link_status[DP_LINK_STATUS_SIZE];
>> + u8 old_sink_count = intel_dp->sink_count;
>> + bool ret;
>>
>> /*
>> * Clearing compliance test variables to allow capturing
>> @@ -4348,12 +4350,20 @@ intel_dp_short_pulse(struct intel_dp *intel_dp)
>>
>> /* Try to read receiver status if the link appears to be up */
>> if (!intel_dp_get_link_status(intel_dp, link_status)) {
>> - return;
>> + return false;
>> }
>>
>> - /* Now read the DPCD to see if it's actually running */
>> - if (!intel_dp_get_dpcd(intel_dp)) {
>> - return;
>> + /*
>> + * Now read the DPCD to see if it's actually running
>> + * Don't return immediately if dpcd read failed,
>> + * if sink count was 1 and dpcd read failed we need
>> + * to do full detection
>> + */
>> + ret = intel_dp_get_dpcd(intel_dp);
>> +
>> + if ((old_sink_count != intel_dp->sink_count) || !ret) {
> I don't see the connection of the comment above with this. If the dpcd read
> fails, the 'return false' will be reached regardless of the previous value of
> intel_dp->sink_count. Did you intend to do something different or did I miss
> something?
>
The code was changed but comment was not updated.. Will change the
comment to explain correctly.
>> + /* No need to proceed if we are going to do full detect */
>> + return false;
>> }
>>
>> /* Try to read the source of the interrupt */
>> @@ -4373,6 +4383,8 @@ intel_dp_short_pulse(struct intel_dp *intel_dp)
>> drm_modeset_lock(&dev->mode_config.connection_mutex, NULL);
>> intel_dp_check_link_status(intel_dp);
>> drm_modeset_unlock(&dev->mode_config.connection_mutex);
>> +
>> + return true;
>> }
>>
>> /* XXX this is probably wrong for multiple downstream ports */
>> @@ -5095,8 +5107,12 @@ intel_dp_hpd_pulse(struct intel_digital_port
>> *intel_dig_port, bool long_hpd)
>> }
>> }
>>
>> - if (!intel_dp->is_mst)
>> - intel_dp_short_pulse(intel_dp);
>> + if (!intel_dp->is_mst) {
>> + if (!intel_dp_short_pulse(intel_dp)) {
>> + intel_dp_long_pulse(intel_dp
>> ->attached_connector);
>> + goto put_power;
> It could be in a follow up patch, but I think its a good moment to get rid of
> the goto put_power. The only thing they do is skip the 'ret = IRQ_HANDLED'
> assignment now.
>
> Ander
Sure.. Will remove the goto put_power in follow up patch.
>> + }
>> + }
>> }
>>
>> ret = IRQ_HANDLED;
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2016-01-19 8:36 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-05 12:50 [PATCH 0/6] Fixing sink count related detection over Shubhangi Shrivastava
2016-01-05 12:50 ` [PATCH 1/6] drm/i915: Splitting intel_dp_detect Shubhangi Shrivastava
2016-01-13 11:20 ` Ander Conselvan De Oliveira
2016-01-13 13:33 ` Ander Conselvan De Oliveira
2016-01-14 13:50 ` Shubhangi Shrivastava
2016-01-15 10:07 ` Ander Conselvan De Oliveira
2016-01-18 10:24 ` [PATCH] " Shubhangi Shrivastava
2016-01-19 8:51 ` [PATCH 1/6] " Shubhangi Shrivastava
2016-01-05 12:50 ` [PATCH 2/6] drm/i915: Cleaning up intel_dp_hpd_pulse Shubhangi Shrivastava
2016-01-13 14:05 ` Ander Conselvan De Oliveira
2016-01-05 12:50 ` [PATCH 3/6] drm/i915: Splitting intel_dp_check_link_status Shubhangi Shrivastava
2016-01-13 15:04 ` Ander Conselvan De Oliveira
2016-01-18 10:52 ` [PATCH] " Shubhangi Shrivastava
2016-01-18 21:05 ` Lukas Wunner
2016-01-19 4:44 ` Thulasimani, Sivakumar
2016-01-19 8:44 ` Daniel Vetter
2016-01-19 8:59 ` Thulasimani, Sivakumar
2016-01-19 9:05 ` Daniel Vetter
2016-01-19 9:11 ` Thulasimani, Sivakumar
2016-01-19 9:55 ` [PATCH] drm/i915: Reorganizing intel_dp_check_link_status Shubhangi Shrivastava
2016-01-19 8:53 ` [PATCH 3/6] drm/i915: Splitting intel_dp_check_link_status Shubhangi Shrivastava
2016-01-05 12:50 ` [PATCH 4/6] drm/i915: Save sink_count for tracking changes to it Shubhangi Shrivastava
2016-01-14 13:00 ` Ander Conselvan De Oliveira
2016-01-19 8:56 ` Shubhangi Shrivastava
2016-01-05 12:50 ` [PATCH 5/6] drm/i915: read sink_count dpcd always Shubhangi Shrivastava
2016-01-14 13:04 ` Ander Conselvan De Oliveira
2016-01-18 12:44 ` Shubhangi Shrivastava
2016-01-18 12:46 ` Shubhangi Shrivastava
2016-01-18 12:49 ` [PATCH] drm/i915: Save sink_count for tracking changes to it and " Shubhangi Shrivastava
2016-01-18 13:00 ` [PATCH 5/6] drm/i915: " Ander Conselvan De Oliveira
2016-01-19 8:36 ` Shubhangi Shrivastava
2016-01-05 12:50 ` [PATCH 6/6] drm/i915: force full detect on sink count change Shubhangi Shrivastava
2016-01-14 13:50 ` Ander Conselvan De Oliveira
2016-01-19 8:40 ` Shubhangi Shrivastava [this message]
2016-01-05 13:49 ` ✗ warning: Fi.CI.BAT Patchwork
2016-01-18 10:49 ` ✗ Fi.CI.BAT: warning for Fixing sink count related detection over (rev6) Patchwork
2016-01-18 11:01 ` ✗ Fi.CI.BAT: failure for Fixing sink count related detection over (rev7) Patchwork
2016-01-18 13:01 ` ✗ Fi.CI.BAT: failure for Fixing sink count related detection over (rev8) Patchwork
2016-01-19 9:38 ` Ander Conselvan De Oliveira
2016-01-19 10:22 ` Shrivastava, Shubhangi
2016-01-19 10:01 ` ✗ Fi.CI.BAT: failure for Fixing sink count related detection over (rev9) Patchwork
-- strict thread matches above, loose matches on Subject: below --
2015-11-06 12:28 [PATCH 0/6] Fixing sink count related detection over Shubhangi Shrivastava
2015-11-06 12:28 ` [PATCH 6/6] drm/i915: force full detect on sink count change Shubhangi Shrivastava
2015-11-02 12:55 [PATCH 0/6] Fixing sink count related detection over Shubhangi Shrivastava
2015-11-02 12:55 ` [PATCH 6/6] drm/i915: force full detect on sink count change Shubhangi Shrivastava
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=569DF667.6030504@intel.com \
--to=shubhangi.shrivastava@intel.com \
--cc=conselvan2@gmail.com \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.