All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kuogee Hsieh <quic_khsieh@quicinc.com>
To: Stephen Boyd <swboyd@chromium.org>,
	Rob Clark <robdclark@gmail.com>,
	Abhinav Kumar <quic_abhinavk@quicinc.com>,
	Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: <linux-kernel@vger.kernel.org>, <patches@lists.linux.dev>,
	Sean Paul <sean@poorly.run>, <dri-devel@lists.freedesktop.org>,
	<freedreno@lists.freedesktop.org>,
	Vinod Polimera <quic_vpolimer@quicinc.com>
Subject: Re: [PATCH 3/7] drm/msm/dp: Remove dead code related to downstream cap info
Date: Thu, 31 Aug 2023 13:28:02 -0700	[thread overview]
Message-ID: <a181f3ab-bdb3-df24-5dcc-26e26f2feaf1@quicinc.com> (raw)
In-Reply-To: <20230829184735.2841739-4-swboyd@chromium.org>


On 8/29/2023 11:47 AM, Stephen Boyd wrote:
> We read the downstream port count and capability info but never use it
> anywhere. Remove 'ds_port_cnt' and 'ds_cap_info' and any associated code
> from this driver. Fold the check for 'dfp_present' into a call to
> drm_dp_is_branch() at the one place it is used to get rid of any member
> storage related to downstream ports.
>
> Cc: Vinod Polimera <quic_vpolimer@quicinc.com>
> Cc: Kuogee Hsieh <quic_khsieh@quicinc.com>
> Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Tested-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
Reviewed-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
> ---
>   drivers/gpu/drm/msm/dp/dp_panel.c | 25 +++----------------------
>   drivers/gpu/drm/msm/dp/dp_panel.h |  6 ------
>   2 files changed, 3 insertions(+), 28 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/dp/dp_panel.c b/drivers/gpu/drm/msm/dp/dp_panel.c
> index a0523b18b9e9..9fb4e963fefb 100644
> --- a/drivers/gpu/drm/msm/dp/dp_panel.c
> +++ b/drivers/gpu/drm/msm/dp/dp_panel.c
> @@ -43,9 +43,7 @@ static void dp_panel_read_psr_cap(struct dp_panel_private *panel)
>   
>   static int dp_panel_read_dpcd(struct dp_panel *dp_panel)
>   {
> -	int rc = 0;
> -	size_t len;
> -	ssize_t rlen;
> +	int rc;
>   	struct dp_panel_private *panel;
>   	struct dp_link_info *link_info;
>   	u8 *dpcd, major, minor;
> @@ -79,25 +77,8 @@ static int dp_panel_read_dpcd(struct dp_panel *dp_panel)
>   	if (drm_dp_enhanced_frame_cap(dpcd))
>   		link_info->capabilities |= DP_LINK_CAP_ENHANCED_FRAMING;
>   
> -	dp_panel->dfp_present = dpcd[DP_DOWNSTREAMPORT_PRESENT];
> -	dp_panel->dfp_present &= DP_DWN_STRM_PORT_PRESENT;
> -
> -	if (dp_panel->dfp_present && (dpcd[DP_DPCD_REV] > 0x10)) {
> -		dp_panel->ds_port_cnt = dpcd[DP_DOWN_STREAM_PORT_COUNT];
> -		dp_panel->ds_port_cnt &= DP_PORT_COUNT_MASK;
> -		len = DP_DOWNSTREAM_PORTS * DP_DOWNSTREAM_CAP_SIZE;
> -
> -		rlen = drm_dp_dpcd_read(panel->aux,
> -			DP_DOWNSTREAM_PORT_0, dp_panel->ds_cap_info, len);
> -		if (rlen < len) {
> -			DRM_ERROR("ds port status failed, rlen=%zd\n", rlen);
> -			rc = -EINVAL;
> -			goto end;
> -		}
> -	}
> -
>   	dp_panel_read_psr_cap(panel);
> -end:
> +
>   	return rc;
>   }
>   
> @@ -173,7 +154,7 @@ int dp_panel_read_sink_caps(struct dp_panel *dp_panel,
>   		return -EINVAL;
>   	}
>   
> -	if (dp_panel->dfp_present) {
> +	if (drm_dp_is_branch(dp_panel->dpcd)) {
>   		count = drm_dp_read_sink_count(panel->aux);
>   		if (!count) {
>   			DRM_ERROR("no downstream ports connected\n");
> diff --git a/drivers/gpu/drm/msm/dp/dp_panel.h b/drivers/gpu/drm/msm/dp/dp_panel.h
> index 6d733480a62d..3cb1f8dcfd3b 100644
> --- a/drivers/gpu/drm/msm/dp/dp_panel.h
> +++ b/drivers/gpu/drm/msm/dp/dp_panel.h
> @@ -13,9 +13,6 @@
>   
>   struct edid;
>   
> -#define DP_DOWNSTREAM_PORTS		4
> -#define DP_DOWNSTREAM_CAP_SIZE		4
> -
>   struct dp_display_mode {
>   	struct drm_display_mode drm_mode;
>   	u32 capabilities;
> @@ -39,9 +36,6 @@ struct dp_panel_psr {
>   struct dp_panel {
>   	/* dpcd raw data */
>   	u8 dpcd[DP_RECEIVER_CAP_SIZE];
> -	u8 ds_cap_info[DP_DOWNSTREAM_PORTS * DP_DOWNSTREAM_CAP_SIZE];
> -	u32 ds_port_cnt;
> -	u32 dfp_present;
>   
>   	struct dp_link_info link_info;
>   	struct drm_dp_desc desc;

WARNING: multiple messages have this Message-ID (diff)
From: Kuogee Hsieh <quic_khsieh@quicinc.com>
To: Stephen Boyd <swboyd@chromium.org>,
	Rob Clark <robdclark@gmail.com>,
	Abhinav Kumar <quic_abhinavk@quicinc.com>,
	Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: Sean Paul <sean@poorly.run>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	Vinod Polimera <quic_vpolimer@quicinc.com>,
	patches@lists.linux.dev, freedreno@lists.freedesktop.org
Subject: Re: [PATCH 3/7] drm/msm/dp: Remove dead code related to downstream cap info
Date: Thu, 31 Aug 2023 13:28:02 -0700	[thread overview]
Message-ID: <a181f3ab-bdb3-df24-5dcc-26e26f2feaf1@quicinc.com> (raw)
In-Reply-To: <20230829184735.2841739-4-swboyd@chromium.org>


On 8/29/2023 11:47 AM, Stephen Boyd wrote:
> We read the downstream port count and capability info but never use it
> anywhere. Remove 'ds_port_cnt' and 'ds_cap_info' and any associated code
> from this driver. Fold the check for 'dfp_present' into a call to
> drm_dp_is_branch() at the one place it is used to get rid of any member
> storage related to downstream ports.
>
> Cc: Vinod Polimera <quic_vpolimer@quicinc.com>
> Cc: Kuogee Hsieh <quic_khsieh@quicinc.com>
> Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Tested-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
Reviewed-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
> ---
>   drivers/gpu/drm/msm/dp/dp_panel.c | 25 +++----------------------
>   drivers/gpu/drm/msm/dp/dp_panel.h |  6 ------
>   2 files changed, 3 insertions(+), 28 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/dp/dp_panel.c b/drivers/gpu/drm/msm/dp/dp_panel.c
> index a0523b18b9e9..9fb4e963fefb 100644
> --- a/drivers/gpu/drm/msm/dp/dp_panel.c
> +++ b/drivers/gpu/drm/msm/dp/dp_panel.c
> @@ -43,9 +43,7 @@ static void dp_panel_read_psr_cap(struct dp_panel_private *panel)
>   
>   static int dp_panel_read_dpcd(struct dp_panel *dp_panel)
>   {
> -	int rc = 0;
> -	size_t len;
> -	ssize_t rlen;
> +	int rc;
>   	struct dp_panel_private *panel;
>   	struct dp_link_info *link_info;
>   	u8 *dpcd, major, minor;
> @@ -79,25 +77,8 @@ static int dp_panel_read_dpcd(struct dp_panel *dp_panel)
>   	if (drm_dp_enhanced_frame_cap(dpcd))
>   		link_info->capabilities |= DP_LINK_CAP_ENHANCED_FRAMING;
>   
> -	dp_panel->dfp_present = dpcd[DP_DOWNSTREAMPORT_PRESENT];
> -	dp_panel->dfp_present &= DP_DWN_STRM_PORT_PRESENT;
> -
> -	if (dp_panel->dfp_present && (dpcd[DP_DPCD_REV] > 0x10)) {
> -		dp_panel->ds_port_cnt = dpcd[DP_DOWN_STREAM_PORT_COUNT];
> -		dp_panel->ds_port_cnt &= DP_PORT_COUNT_MASK;
> -		len = DP_DOWNSTREAM_PORTS * DP_DOWNSTREAM_CAP_SIZE;
> -
> -		rlen = drm_dp_dpcd_read(panel->aux,
> -			DP_DOWNSTREAM_PORT_0, dp_panel->ds_cap_info, len);
> -		if (rlen < len) {
> -			DRM_ERROR("ds port status failed, rlen=%zd\n", rlen);
> -			rc = -EINVAL;
> -			goto end;
> -		}
> -	}
> -
>   	dp_panel_read_psr_cap(panel);
> -end:
> +
>   	return rc;
>   }
>   
> @@ -173,7 +154,7 @@ int dp_panel_read_sink_caps(struct dp_panel *dp_panel,
>   		return -EINVAL;
>   	}
>   
> -	if (dp_panel->dfp_present) {
> +	if (drm_dp_is_branch(dp_panel->dpcd)) {
>   		count = drm_dp_read_sink_count(panel->aux);
>   		if (!count) {
>   			DRM_ERROR("no downstream ports connected\n");
> diff --git a/drivers/gpu/drm/msm/dp/dp_panel.h b/drivers/gpu/drm/msm/dp/dp_panel.h
> index 6d733480a62d..3cb1f8dcfd3b 100644
> --- a/drivers/gpu/drm/msm/dp/dp_panel.h
> +++ b/drivers/gpu/drm/msm/dp/dp_panel.h
> @@ -13,9 +13,6 @@
>   
>   struct edid;
>   
> -#define DP_DOWNSTREAM_PORTS		4
> -#define DP_DOWNSTREAM_CAP_SIZE		4
> -
>   struct dp_display_mode {
>   	struct drm_display_mode drm_mode;
>   	u32 capabilities;
> @@ -39,9 +36,6 @@ struct dp_panel_psr {
>   struct dp_panel {
>   	/* dpcd raw data */
>   	u8 dpcd[DP_RECEIVER_CAP_SIZE];
> -	u8 ds_cap_info[DP_DOWNSTREAM_PORTS * DP_DOWNSTREAM_CAP_SIZE];
> -	u32 ds_port_cnt;
> -	u32 dfp_present;
>   
>   	struct dp_link_info link_info;
>   	struct drm_dp_desc desc;

  reply	other threads:[~2023-08-31 20:28 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-29 18:47 [PATCH 0/7] drm/msm/dp: Simplify DPCD related code with helpers Stephen Boyd
2023-08-29 18:47 ` Stephen Boyd
2023-08-29 18:47 ` [PATCH 1/7] drm/msm/dp: Replace open-coded drm_dp_read_dpcd_caps() Stephen Boyd
2023-08-29 18:47   ` Stephen Boyd
2023-08-31 20:27   ` Kuogee Hsieh
2023-08-31 20:27     ` Kuogee Hsieh
2023-09-03 22:37   ` Dmitry Baryshkov
2023-09-03 22:37     ` Dmitry Baryshkov
2023-08-29 18:47 ` [PATCH 2/7] drm/msm/dp: Use drm_dp_read_sink_count() helper Stephen Boyd
2023-08-29 18:47   ` Stephen Boyd
2023-08-31 20:27   ` Kuogee Hsieh
2023-08-31 20:27     ` Kuogee Hsieh
2023-09-03 22:37   ` Dmitry Baryshkov
2023-09-03 22:37     ` Dmitry Baryshkov
2023-08-29 18:47 ` [PATCH 3/7] drm/msm/dp: Remove dead code related to downstream cap info Stephen Boyd
2023-08-29 18:47   ` Stephen Boyd
2023-08-31 20:28   ` Kuogee Hsieh [this message]
2023-08-31 20:28     ` Kuogee Hsieh
2023-08-31 20:28   ` Kuogee Hsieh
2023-08-31 20:28     ` Kuogee Hsieh
2023-09-03 22:39   ` Dmitry Baryshkov
2023-09-03 22:39     ` Dmitry Baryshkov
2023-08-29 18:47 ` [PATCH 4/7] drm/msm/dp: Remove aux_cfg_update_done and related code Stephen Boyd
2023-08-29 18:47   ` Stephen Boyd
2023-08-31 20:28   ` Kuogee Hsieh
2023-08-31 20:28     ` Kuogee Hsieh
2023-09-03 22:39   ` Dmitry Baryshkov
2023-09-03 22:39     ` Dmitry Baryshkov
2023-08-29 18:47 ` [PATCH 5/7] drm/msm/dp: Simplify with drm_dp_{max_link_rate, max_lane_count}() Stephen Boyd
2023-08-29 18:47   ` [PATCH 5/7] drm/msm/dp: Simplify with drm_dp_{max_link_rate,max_lane_count}() Stephen Boyd
2023-08-31 20:29   ` Kuogee Hsieh
2023-08-31 20:29     ` Kuogee Hsieh
2023-09-03 22:39   ` Dmitry Baryshkov
2023-09-03 22:39     ` Dmitry Baryshkov
2023-08-29 18:47 ` [PATCH 6/7] drm/msm/dp: Inline dp_link_parse_sink_count() Stephen Boyd
2023-08-29 18:47   ` Stephen Boyd
2023-08-31 20:29   ` Kuogee Hsieh
2023-08-31 20:29     ` Kuogee Hsieh
2023-09-03 22:39   ` Dmitry Baryshkov
2023-09-03 22:39     ` Dmitry Baryshkov
2023-08-29 18:47 ` [PATCH 7/7] drm/msm/dp: Remove dp_display_is_ds_bridge() Stephen Boyd
2023-08-29 18:47   ` Stephen Boyd
2023-08-31 20:29   ` Kuogee Hsieh
2023-08-31 20:29     ` Kuogee Hsieh
2023-09-03 22:40   ` Dmitry Baryshkov
2023-09-03 22:40     ` Dmitry Baryshkov
2023-09-05 21:52     ` Stephen Boyd
2023-09-05 21:52       ` Stephen Boyd
2023-09-03 22:45 ` [PATCH 0/7] drm/msm/dp: Simplify DPCD related code with helpers Dmitry Baryshkov
2023-09-03 22:45   ` Dmitry Baryshkov
2023-10-08 14:01 ` Dmitry Baryshkov
2023-10-08 14:01   ` Dmitry Baryshkov

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=a181f3ab-bdb3-df24-5dcc-26e26f2feaf1@quicinc.com \
    --to=quic_khsieh@quicinc.com \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=patches@lists.linux.dev \
    --cc=quic_abhinavk@quicinc.com \
    --cc=quic_vpolimer@quicinc.com \
    --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.