From: khsieh@codeaurora.org
To: Stephen Boyd <swboyd@chromium.org>
Cc: dri-devel@lists.freedesktop.org, robdclark@gmail.com,
sean@poorly.run, abhinavk@codeaurora.org,
aravindh@codeaurora.org, airlied@linux.ie, daniel@ffwll.ch,
bjorn.andersson@linaro.org, linux-arm-msm@vger.kernel.org,
freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 3/7] drm/msm/dp: reset aux controller after dp_aux_cmd_fifo_tx() failed.
Date: Thu, 08 Jul 2021 14:59:53 -0700 [thread overview]
Message-ID: <a5bb5f6bf7defa9c9bbf7d1fde87ca49@codeaurora.org> (raw)
In-Reply-To: <CAE-0n53JxLuQZBUMLOuH_Bm7zQ7Vite2OhjTB_xO=s_KAGarXw@mail.gmail.com>
On 2021-07-08 00:34, Stephen Boyd wrote:
> Quoting Kuogee Hsieh (2021-07-06 10:20:16)
>> Aux hardware calibration sequence requires resetting the aux
>> controller
>> in order for the new setting to take effect. However resetting the AUX
>> controller will also clear HPD interrupt status which may accidentally
>> cause pending unplug interrupt to get lost. Therefore reset aux
>> controller only when link is in connection state when
>> dp_aux_cmd_fifo_tx()
>> fail. This fixes Link Layer CTS cases 4.2.1.1 and 4.2.1.2.
>>
>> Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
>> ---
>> drivers/gpu/drm/msm/dp/dp_aux.c | 3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/msm/dp/dp_aux.c
>> b/drivers/gpu/drm/msm/dp/dp_aux.c
>> index 4a3293b..eb40d84 100644
>> --- a/drivers/gpu/drm/msm/dp/dp_aux.c
>> +++ b/drivers/gpu/drm/msm/dp/dp_aux.c
>> @@ -353,6 +353,9 @@ static ssize_t dp_aux_transfer(struct drm_dp_aux
>> *dp_aux,
>> if (!(aux->retry_cnt % MAX_AUX_RETRIES))
>>
>> dp_catalog_aux_update_cfg(aux->catalog);
>> }
>> + /* reset aux if link is in connected state */
>> + if (dp_catalog_link_is_connected(aux->catalog))
>
> How do we avoid resetting aux when hpd is unplugged and then plugged
> back in during an aux transfer?
i am not sure this is possible.
it should get unplug interrupt followed by plugin interrupt.
In this case, aux will be re set and initialized
>
>> + dp_catalog_aux_reset(aux->catalog);
>> } else {
>> aux->retry_cnt = 0;
>> switch (aux->aux_error_num) {
>> --
>> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora
>> Forum,
>> a Linux Foundation Collaborative Project
>>
WARNING: multiple messages have this Message-ID (diff)
From: khsieh@codeaurora.org
To: Stephen Boyd <swboyd@chromium.org>
Cc: freedreno@lists.freedesktop.org, airlied@linux.ie,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
abhinavk@codeaurora.org, bjorn.andersson@linaro.org,
dri-devel@lists.freedesktop.org, aravindh@codeaurora.org,
sean@poorly.run
Subject: Re: [PATCH 3/7] drm/msm/dp: reset aux controller after dp_aux_cmd_fifo_tx() failed.
Date: Thu, 08 Jul 2021 14:59:53 -0700 [thread overview]
Message-ID: <a5bb5f6bf7defa9c9bbf7d1fde87ca49@codeaurora.org> (raw)
In-Reply-To: <CAE-0n53JxLuQZBUMLOuH_Bm7zQ7Vite2OhjTB_xO=s_KAGarXw@mail.gmail.com>
On 2021-07-08 00:34, Stephen Boyd wrote:
> Quoting Kuogee Hsieh (2021-07-06 10:20:16)
>> Aux hardware calibration sequence requires resetting the aux
>> controller
>> in order for the new setting to take effect. However resetting the AUX
>> controller will also clear HPD interrupt status which may accidentally
>> cause pending unplug interrupt to get lost. Therefore reset aux
>> controller only when link is in connection state when
>> dp_aux_cmd_fifo_tx()
>> fail. This fixes Link Layer CTS cases 4.2.1.1 and 4.2.1.2.
>>
>> Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
>> ---
>> drivers/gpu/drm/msm/dp/dp_aux.c | 3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/msm/dp/dp_aux.c
>> b/drivers/gpu/drm/msm/dp/dp_aux.c
>> index 4a3293b..eb40d84 100644
>> --- a/drivers/gpu/drm/msm/dp/dp_aux.c
>> +++ b/drivers/gpu/drm/msm/dp/dp_aux.c
>> @@ -353,6 +353,9 @@ static ssize_t dp_aux_transfer(struct drm_dp_aux
>> *dp_aux,
>> if (!(aux->retry_cnt % MAX_AUX_RETRIES))
>>
>> dp_catalog_aux_update_cfg(aux->catalog);
>> }
>> + /* reset aux if link is in connected state */
>> + if (dp_catalog_link_is_connected(aux->catalog))
>
> How do we avoid resetting aux when hpd is unplugged and then plugged
> back in during an aux transfer?
i am not sure this is possible.
it should get unplug interrupt followed by plugin interrupt.
In this case, aux will be re set and initialized
>
>> + dp_catalog_aux_reset(aux->catalog);
>> } else {
>> aux->retry_cnt = 0;
>> switch (aux->aux_error_num) {
>> --
>> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora
>> Forum,
>> a Linux Foundation Collaborative Project
>>
next prev parent reply other threads:[~2021-07-08 22:00 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-06 17:20 [PATCH 0/7] add fixes to pass DP Link Layer compliance test cases Kuogee Hsieh
2021-07-06 17:20 ` Kuogee Hsieh
2021-07-06 17:20 ` [PATCH 1/7] drm/msm/dp: use dp_ctrl_off_link_stream during PHY compliance test run Kuogee Hsieh
2021-07-06 17:20 ` Kuogee Hsieh
2021-07-08 7:03 ` Stephen Boyd
2021-07-08 7:03 ` Stephen Boyd
2021-07-08 21:33 ` khsieh
2021-07-08 21:33 ` khsieh
2021-07-06 17:20 ` [PATCH 2/7] drm/msm/dp: reduce link rate if failed at link training 1 Kuogee Hsieh
2021-07-06 17:20 ` Kuogee Hsieh
2021-07-08 7:33 ` Stephen Boyd
2021-07-08 7:33 ` Stephen Boyd
2021-07-09 17:46 ` khsieh
2021-07-09 17:46 ` khsieh
2021-07-15 18:59 ` Stephen Boyd
2021-07-15 18:59 ` Stephen Boyd
2021-07-06 17:20 ` [PATCH 3/7] drm/msm/dp: reset aux controller after dp_aux_cmd_fifo_tx() failed Kuogee Hsieh
2021-07-06 17:20 ` Kuogee Hsieh
2021-07-08 7:34 ` Stephen Boyd
2021-07-08 7:34 ` Stephen Boyd
2021-07-08 21:59 ` khsieh [this message]
2021-07-08 21:59 ` khsieh
2021-07-06 17:20 ` [PATCH 4/7] drm/msm/dp: replug event is converted into an unplug followed by an plug events Kuogee Hsieh
2021-07-06 17:20 ` Kuogee Hsieh
2021-07-08 20:56 ` Stephen Boyd
2021-07-08 20:56 ` Stephen Boyd
2021-07-06 17:20 ` [PATCH 5/7] drm/msm/dp: return correct edid checksum after corrupted edid checksum read Kuogee Hsieh
2021-07-06 17:20 ` Kuogee Hsieh
2021-07-08 7:14 ` Stephen Boyd
2021-07-08 7:14 ` Stephen Boyd
2021-07-09 18:16 ` khsieh
2021-07-09 18:16 ` khsieh
2021-07-06 17:20 ` [PATCH 6/7] drm/msm/dp: do not end dp link training until video is ready Kuogee Hsieh
2021-07-06 17:20 ` Kuogee Hsieh
2021-07-06 17:20 ` [PATCH 7/7] drm/msm/dp: retrain link when loss of symbol lock detected Kuogee Hsieh
2021-07-06 17:20 ` Kuogee Hsieh
2021-07-08 7:21 ` Stephen Boyd
2021-07-08 7:21 ` Stephen Boyd
2021-07-09 17:16 ` khsieh
2021-07-09 17:16 ` khsieh
2021-07-15 19:00 ` Stephen Boyd
2021-07-15 19:00 ` Stephen Boyd
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=a5bb5f6bf7defa9c9bbf7d1fde87ca49@codeaurora.org \
--to=khsieh@codeaurora.org \
--cc=abhinavk@codeaurora.org \
--cc=airlied@linux.ie \
--cc=aravindh@codeaurora.org \
--cc=bjorn.andersson@linaro.org \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=freedreno@lists.freedesktop.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robdclark@gmail.com \
--cc=sean@poorly.run \
--cc=swboyd@chromium.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.