[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <f9c72f9d-66d4-4533-931f-179267701dee@amd.com>
Date: Fri, 5 Dec 2025 14:21:24 -0700
From: Alex Hung <alex.hung@....com>
To: Rosen Penev <rosenp@...il.com>, dri-devel@...ts.freedesktop.org
Cc: Harry Wentland <harry.wentland@....com>, Leo Li <sunpeng.li@....com>,
Rodrigo Siqueira <siqueira@...lia.com>,
Alex Deucher <alexander.deucher@....com>,
Christian König <christian.koenig@....com>,
David Airlie <airlied@...il.com>, Simona Vetter <simona@...ll.ch>,
"open list:AMD DISPLAY CORE" <amd-gfx@...ts.freedesktop.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] drm: amd: display: shrink struct members
This patch pass this week's promotion test.
Reviewed-by: Alex Hung <alex.hung@....com>
On 11/8/25 10:40, Rosen Penev wrote:
> On a 32-bit ARM system, the audio_decoder struct ends up being too large
> for dp_retrain_link_dp_test.
>
> link_dp_cts.c:157:1: error: the frame size of 1328 bytes is larger than
> 1280 bytes [-Werror=frame-larger-than=]
>
> This is mitigated by shrinking the members of the struct and avoids
> having to deal with dynamic allocation.
>
> feed_back_divider is assigned but otherwise unused. Remove both.
>
> pixel_repetition looks like it should be a bool since it's only ever
> assigned to 1. But there are checks for 2 and 4. Reduce to uint8_t.
>
> Remove ss_percentage_divider. Unused.
>
> Shrink refresh_rate as it gets assigned to at most a 3 digit integer
> value.
>
> Signed-off-by: Rosen Penev <rosenp@...il.com>
> ---
> .../drm/amd/display/dc/hwss/dce110/dce110_hwseq.c | 3 ---
> drivers/gpu/drm/amd/display/include/audio_types.h | 12 +++++-------
> 2 files changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/hwss/dce110/dce110_hwseq.c b/drivers/gpu/drm/amd/display/dc/hwss/dce110/dce110_hwseq.c
> index 3005115c8505..852c117fe5b6 100644
> --- a/drivers/gpu/drm/amd/display/dc/hwss/dce110/dce110_hwseq.c
> +++ b/drivers/gpu/drm/amd/display/dc/hwss/dce110/dce110_hwseq.c
> @@ -1480,9 +1480,6 @@ void build_audio_output(
> state->clk_mgr);
> }
>
> - audio_output->pll_info.feed_back_divider =
> - pipe_ctx->pll_settings.feedback_divider;
> -
> audio_output->pll_info.dto_source =
> translate_to_dto_source(
> pipe_ctx->stream_res.tg->inst + 1);
> diff --git a/drivers/gpu/drm/amd/display/include/audio_types.h b/drivers/gpu/drm/amd/display/include/audio_types.h
> index e4a26143f14c..6699ad4fa825 100644
> --- a/drivers/gpu/drm/amd/display/include/audio_types.h
> +++ b/drivers/gpu/drm/amd/display/include/audio_types.h
> @@ -47,15 +47,15 @@ struct audio_crtc_info {
> uint32_t h_total;
> uint32_t h_active;
> uint32_t v_active;
> - uint32_t pixel_repetition;
> uint32_t requested_pixel_clock_100Hz; /* in 100Hz */
> uint32_t calculated_pixel_clock_100Hz; /* in 100Hz */
> - uint32_t refresh_rate;
> + uint32_t dsc_bits_per_pixel;
> + uint32_t dsc_num_slices;
> enum dc_color_depth color_depth;
> enum dc_pixel_encoding pixel_encoding;
> + uint16_t refresh_rate;
> + uint8_t pixel_repetition;
> bool interlaced;
> - uint32_t dsc_bits_per_pixel;
> - uint32_t dsc_num_slices;
> };
> struct azalia_clock_info {
> uint32_t pixel_clock_in_10khz;
> @@ -78,11 +78,9 @@ enum audio_dto_source {
>
> struct audio_pll_info {
> uint32_t audio_dto_source_clock_in_khz;
> - uint32_t feed_back_divider;
> + uint32_t ss_percentage;
> enum audio_dto_source dto_source;
> bool ss_enabled;
> - uint32_t ss_percentage;
> - uint32_t ss_percentage_divider;
> };
>
> struct audio_channel_associate_info {
Powered by blists - more mailing lists