[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CADnq5_P4an7Jx0vPxBY9Mt8OHNOZsyx0MxCG4Mi8XVdMX-70yA@mail.gmail.com>
Date: Tue, 15 Sep 2020 15:18:26 -0400
From: Alex Deucher <alexdeucher@...il.com>
To: Bernard Zhao <bernard@...o.com>
Cc: Harry Wentland <harry.wentland@....com>,
Leo Li <sunpeng.li@....com>,
Alex Deucher <alexander.deucher@....com>,
Christian König <christian.koenig@....com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Rodrigo Siqueira <Rodrigo.Siqueira@....com>,
Wenjing Liu <wenjing.liu@....com>, Aric Cyr <aric.cyr@....com>,
abdoulaye berthe <abdoulaye.berthe@....com>,
Hersen Wu <hersenxs.wu@....com>,
jinlong zhang <jinlong.zhang@....com>,
amd-gfx list <amd-gfx@...ts.freedesktop.org>,
Maling list - DRI developers
<dri-devel@...ts.freedesktop.org>,
LKML <linux-kernel@...r.kernel.org>, opensource.kernel@...o.com
Subject: Re: [PATCH] drm/amd/display: optimize code runtime a bit
Applied. Thanks!
Alex
On Thu, Sep 10, 2020 at 3:23 AM Bernard Zhao <bernard@...o.com> wrote:
>
> In fnction is_cr_done & is_ch_eq_done, when done = false
> happened once, no need to circle left ln_count.
> This change is to make the code run a bit fast.
>
> Signed-off-by: Bernard Zhao <bernard@...o.com>
> ---
> drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 14 +++++---------
> 1 file changed, 5 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
> index b2be6ad5101d..53e30be8b66a 100644
> --- a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
> +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
> @@ -373,34 +373,30 @@ static void dpcd_set_lt_pattern_and_lane_settings(
> static bool is_cr_done(enum dc_lane_count ln_count,
> union lane_status *dpcd_lane_status)
> {
> - bool done = true;
> uint32_t lane;
> /*LANEx_CR_DONE bits All 1's?*/
> for (lane = 0; lane < (uint32_t)(ln_count); lane++) {
> if (!dpcd_lane_status[lane].bits.CR_DONE_0)
> - done = false;
> + return false;
> }
> - return done;
> -
> + return true;
> }
>
> static bool is_ch_eq_done(enum dc_lane_count ln_count,
> union lane_status *dpcd_lane_status,
> union lane_align_status_updated *lane_status_updated)
> {
> - bool done = true;
> uint32_t lane;
> if (!lane_status_updated->bits.INTERLANE_ALIGN_DONE)
> - done = false;
> + return false;
> else {
> for (lane = 0; lane < (uint32_t)(ln_count); lane++) {
> if (!dpcd_lane_status[lane].bits.SYMBOL_LOCKED_0 ||
> !dpcd_lane_status[lane].bits.CHANNEL_EQ_DONE_0)
> - done = false;
> + return false;
> }
> }
> - return done;
> -
> + return true;
> }
>
> static void update_drive_settings(
> --
> 2.28.0
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@...ts.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
Powered by blists - more mailing lists