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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).