All of lore.kernel.org
 help / color / mirror / Atom feed
From: maitreye@codeaurora.org
To: Stephen Boyd <swboyd@chromium.org>
Cc: dri-devel@lists.freedesktop.org, linux-arm-msm@vger.kernel.org,
	abhinavk@codeaurora.org, khsieh@codeaurora.org,
	seanpaul@chromium.org, aravindh@codeaurora.org,
	freedreno@lists.freedesktop.org
Subject: Re: [PATCH v4] drm/msm/dp: add logs across DP driver for ease of debugging
Date: Thu, 22 Jul 2021 14:33:43 -0700	[thread overview]
Message-ID: <4a97d331d7a60cb4756899d98f81ca4f@codeaurora.org> (raw)
In-Reply-To: <CAE-0n50zCC9m9Wr6WUvM=mfaQ7GXVEjHNC_T2RfN1=9Y1U_qsg@mail.gmail.com>

Thank you Stephen.

On 2021-07-22 13:31, Stephen Boyd wrote:
> Quoting maitreye (2021-07-21 16:19:40)
>> From: Maitreyee Rao <maitreye@codeaurora.org>
>> 
>> Add trace points across the MSM DP driver to help debug
>> interop issues.
>> 
>> Changes in v4:
>>  - Changed goto statement and used if else-if
> 
> I think drm likes to see all the changelog here to see patch evolution.
> 
Yes, I will fix this
>> 
>> Signed-off-by: Maitreyee Rao <maitreye@codeaurora.org>
>> ---
>> diff --git a/drivers/gpu/drm/msm/dp/dp_link.c 
>> b/drivers/gpu/drm/msm/dp/dp_link.c
>> index be986da..8c98ab7 100644
>> --- a/drivers/gpu/drm/msm/dp/dp_link.c
>> +++ b/drivers/gpu/drm/msm/dp/dp_link.c
>> @@ -1036,43 +1036,28 @@ int dp_link_process_request(struct dp_link 
>> *dp_link)
>> 
>>         if (link->request.test_requested == DP_TEST_LINK_EDID_READ) {
>>                 dp_link->sink_request |= DP_TEST_LINK_EDID_READ;
>> -               return ret;
>>         }
>> -
>> -       ret = dp_link_process_ds_port_status_change(link);
>> -       if (!ret) {
>> +       else if (!(ret = dp_link_process_ds_port_status_change(link))) 
>> {
>>                 dp_link->sink_request |= DS_PORT_STATUS_CHANGED;
>> -               return ret;
>>         }
>> -
>> -       ret = dp_link_process_link_training_request(link);
>> -       if (!ret) {
>> +       else if (!(ret = dp_link_process_link_training_request(link))) 
>> {
>>                 dp_link->sink_request |= DP_TEST_LINK_TRAINING;
>> -               return ret;
>>         }
>> -
>> -       ret = dp_link_process_phy_test_pattern_request(link);
>> -       if (!ret) {
>> +       else if (!(ret = 
>> dp_link_process_phy_test_pattern_request(link))) {
>>                 dp_link->sink_request |= 
>> DP_TEST_LINK_PHY_TEST_PATTERN;
>> -               return ret;
>> -       }
>> -
>> -       ret = dp_link_process_link_status_update(link);
>> -       if (!ret) {
>> +       }
>> +       else if (!(ret = dp_link_process_link_status_update(link))) {
> 
> The kernel coding style is to leave the brackets on the same line
> 
> 	if (condition) {
> 
> 	} else if (conditon) {
> 
> 	}
> 
> See Documentation/process/coding-style.rst
> 
Yes, I will fix this

> Also, the if (!(ret = dp_link_...)) style is really hard to read. Maybe
> apply this patch before?
> 
> ----8<----
> diff --git a/drivers/gpu/drm/msm/dp/dp_link.c 
> b/drivers/gpu/drm/msm/dp/dp_link.c
> index 1195044a7a3b..408cddd90f0f 100644
> --- a/drivers/gpu/drm/msm/dp/dp_link.c
> +++ b/drivers/gpu/drm/msm/dp/dp_link.c
> @@ -1027,41 +1027,22 @@ int dp_link_process_request(struct dp_link 
> *dp_link)
> 
>  	if (link->request.test_requested == DP_TEST_LINK_EDID_READ) {
>  		dp_link->sink_request |= DP_TEST_LINK_EDID_READ;
> -		return ret;
> -	}
> -
> -	ret = dp_link_process_ds_port_status_change(link);
> -	if (!ret) {
> +	} else if (!dp_link_process_ds_port_status_change(link)) {
>  		dp_link->sink_request |= DS_PORT_STATUS_CHANGED;
> -		return ret;
> -	}
> -
> -	ret = dp_link_process_link_training_request(link);
> -	if (!ret) {
> +	} else if (!dp_link_process_link_training_request(link)) {
>  		dp_link->sink_request |= DP_TEST_LINK_TRAINING;
> -		return ret;
> -	}
> -
> -	ret = dp_link_process_phy_test_pattern_request(link);
> -	if (!ret) {
> +	} else if (!dp_link_process_phy_test_pattern_request(link)) {
>  		dp_link->sink_request |= DP_TEST_LINK_PHY_TEST_PATTERN;
> -		return ret;
> -	}
> -
> -	ret = dp_link_process_link_status_update(link);
> -	if (!ret) {
> +	} else if (!dp_link_process_link_status_update(link)) {
>  		dp_link->sink_request |= DP_LINK_STATUS_UPDATED;
> -		return ret;
> -	}
> -
> -	if (dp_link_is_video_pattern_requested(link)) {
> -		ret = 0;
> -		dp_link->sink_request |= DP_TEST_LINK_VIDEO_PATTERN;
> -	}
> +	} else {
> +		if (dp_link_is_video_pattern_requested(link))
> +			dp_link->sink_request |= DP_TEST_LINK_VIDEO_PATTERN;
> 
> -	if (dp_link_is_audio_pattern_requested(link)) {
> -		dp_link->sink_request |= DP_TEST_LINK_AUDIO_PATTERN;
> -		return -EINVAL;
> +		if (dp_link_is_audio_pattern_requested(link)) {
> +			dp_link->sink_request |= DP_TEST_LINK_AUDIO_PATTERN;
> +			ret = -EINVAL;
> +		}
>  	}
> 
>  	return ret;
The reason I did this was to preserve the value of ret as the caller of 
the function checks it. Some functions return -EINVAl like in here:
https://gitlab.freedesktop.org/drm/msm/-/blob/msm-next/drivers/gpu/drm/msm/dp/dp_link.c#L972 
, so to check that it would be necessary to get the ret value.

WARNING: multiple messages have this Message-ID (diff)
From: maitreye@codeaurora.org
To: Stephen Boyd <swboyd@chromium.org>
Cc: linux-arm-msm@vger.kernel.org, abhinavk@codeaurora.org,
	khsieh@codeaurora.org, seanpaul@chromium.org,
	dri-devel@lists.freedesktop.org, aravindh@codeaurora.org,
	freedreno@lists.freedesktop.org
Subject: Re: [PATCH v4] drm/msm/dp: add logs across DP driver for ease of debugging
Date: Thu, 22 Jul 2021 14:33:43 -0700	[thread overview]
Message-ID: <4a97d331d7a60cb4756899d98f81ca4f@codeaurora.org> (raw)
In-Reply-To: <CAE-0n50zCC9m9Wr6WUvM=mfaQ7GXVEjHNC_T2RfN1=9Y1U_qsg@mail.gmail.com>

Thank you Stephen.

On 2021-07-22 13:31, Stephen Boyd wrote:
> Quoting maitreye (2021-07-21 16:19:40)
>> From: Maitreyee Rao <maitreye@codeaurora.org>
>> 
>> Add trace points across the MSM DP driver to help debug
>> interop issues.
>> 
>> Changes in v4:
>>  - Changed goto statement and used if else-if
> 
> I think drm likes to see all the changelog here to see patch evolution.
> 
Yes, I will fix this
>> 
>> Signed-off-by: Maitreyee Rao <maitreye@codeaurora.org>
>> ---
>> diff --git a/drivers/gpu/drm/msm/dp/dp_link.c 
>> b/drivers/gpu/drm/msm/dp/dp_link.c
>> index be986da..8c98ab7 100644
>> --- a/drivers/gpu/drm/msm/dp/dp_link.c
>> +++ b/drivers/gpu/drm/msm/dp/dp_link.c
>> @@ -1036,43 +1036,28 @@ int dp_link_process_request(struct dp_link 
>> *dp_link)
>> 
>>         if (link->request.test_requested == DP_TEST_LINK_EDID_READ) {
>>                 dp_link->sink_request |= DP_TEST_LINK_EDID_READ;
>> -               return ret;
>>         }
>> -
>> -       ret = dp_link_process_ds_port_status_change(link);
>> -       if (!ret) {
>> +       else if (!(ret = dp_link_process_ds_port_status_change(link))) 
>> {
>>                 dp_link->sink_request |= DS_PORT_STATUS_CHANGED;
>> -               return ret;
>>         }
>> -
>> -       ret = dp_link_process_link_training_request(link);
>> -       if (!ret) {
>> +       else if (!(ret = dp_link_process_link_training_request(link))) 
>> {
>>                 dp_link->sink_request |= DP_TEST_LINK_TRAINING;
>> -               return ret;
>>         }
>> -
>> -       ret = dp_link_process_phy_test_pattern_request(link);
>> -       if (!ret) {
>> +       else if (!(ret = 
>> dp_link_process_phy_test_pattern_request(link))) {
>>                 dp_link->sink_request |= 
>> DP_TEST_LINK_PHY_TEST_PATTERN;
>> -               return ret;
>> -       }
>> -
>> -       ret = dp_link_process_link_status_update(link);
>> -       if (!ret) {
>> +       }
>> +       else if (!(ret = dp_link_process_link_status_update(link))) {
> 
> The kernel coding style is to leave the brackets on the same line
> 
> 	if (condition) {
> 
> 	} else if (conditon) {
> 
> 	}
> 
> See Documentation/process/coding-style.rst
> 
Yes, I will fix this

> Also, the if (!(ret = dp_link_...)) style is really hard to read. Maybe
> apply this patch before?
> 
> ----8<----
> diff --git a/drivers/gpu/drm/msm/dp/dp_link.c 
> b/drivers/gpu/drm/msm/dp/dp_link.c
> index 1195044a7a3b..408cddd90f0f 100644
> --- a/drivers/gpu/drm/msm/dp/dp_link.c
> +++ b/drivers/gpu/drm/msm/dp/dp_link.c
> @@ -1027,41 +1027,22 @@ int dp_link_process_request(struct dp_link 
> *dp_link)
> 
>  	if (link->request.test_requested == DP_TEST_LINK_EDID_READ) {
>  		dp_link->sink_request |= DP_TEST_LINK_EDID_READ;
> -		return ret;
> -	}
> -
> -	ret = dp_link_process_ds_port_status_change(link);
> -	if (!ret) {
> +	} else if (!dp_link_process_ds_port_status_change(link)) {
>  		dp_link->sink_request |= DS_PORT_STATUS_CHANGED;
> -		return ret;
> -	}
> -
> -	ret = dp_link_process_link_training_request(link);
> -	if (!ret) {
> +	} else if (!dp_link_process_link_training_request(link)) {
>  		dp_link->sink_request |= DP_TEST_LINK_TRAINING;
> -		return ret;
> -	}
> -
> -	ret = dp_link_process_phy_test_pattern_request(link);
> -	if (!ret) {
> +	} else if (!dp_link_process_phy_test_pattern_request(link)) {
>  		dp_link->sink_request |= DP_TEST_LINK_PHY_TEST_PATTERN;
> -		return ret;
> -	}
> -
> -	ret = dp_link_process_link_status_update(link);
> -	if (!ret) {
> +	} else if (!dp_link_process_link_status_update(link)) {
>  		dp_link->sink_request |= DP_LINK_STATUS_UPDATED;
> -		return ret;
> -	}
> -
> -	if (dp_link_is_video_pattern_requested(link)) {
> -		ret = 0;
> -		dp_link->sink_request |= DP_TEST_LINK_VIDEO_PATTERN;
> -	}
> +	} else {
> +		if (dp_link_is_video_pattern_requested(link))
> +			dp_link->sink_request |= DP_TEST_LINK_VIDEO_PATTERN;
> 
> -	if (dp_link_is_audio_pattern_requested(link)) {
> -		dp_link->sink_request |= DP_TEST_LINK_AUDIO_PATTERN;
> -		return -EINVAL;
> +		if (dp_link_is_audio_pattern_requested(link)) {
> +			dp_link->sink_request |= DP_TEST_LINK_AUDIO_PATTERN;
> +			ret = -EINVAL;
> +		}
>  	}
> 
>  	return ret;
The reason I did this was to preserve the value of ret as the caller of 
the function checks it. Some functions return -EINVAl like in here:
https://gitlab.freedesktop.org/drm/msm/-/blob/msm-next/drivers/gpu/drm/msm/dp/dp_link.c#L972 
, so to check that it would be necessary to get the ret value.

  reply	other threads:[~2021-07-22 21:34 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-21 23:19 [PATCH v4] drm/msm/dp: add logs across DP driver for ease of debugging maitreye
2021-07-21 23:19 ` maitreye
2021-07-22 20:31 ` Stephen Boyd
2021-07-22 20:31   ` Stephen Boyd
2021-07-22 21:33   ` maitreye [this message]
2021-07-22 21:33     ` maitreye
2021-07-22 22:09     ` Stephen Boyd
2021-07-22 22:09       ` Stephen Boyd
2021-07-23  3:53       ` maitreye
2021-07-23  3:53         ` maitreye
2021-07-23 19:32         ` Stephen Boyd
2021-07-23 19:32           ` 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=4a97d331d7a60cb4756899d98f81ca4f@codeaurora.org \
    --to=maitreye@codeaurora.org \
    --cc=abhinavk@codeaurora.org \
    --cc=aravindh@codeaurora.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=khsieh@codeaurora.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=seanpaul@chromium.org \
    --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.