[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <628f3361-6795-4e69-aac2-f9f3200eb6fe@quicinc.com>
Date: Mon, 28 Apr 2025 18:33:05 -0700
From: Abhinav Kumar <quic_abhinavk@...cinc.com>
To: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>,
Rob Clark
<robdclark@...il.com>, Sean Paul <sean@...rly.run>,
Marijn Suijten
<marijn.suijten@...ainline.org>,
David Airlie <airlied@...il.com>, Simona
Vetter <simona@...ll.ch>,
Barnabás Czémán
<barnabas.czeman@...nlining.org>,
Konrad Dybcio <konradybcio@...nel.org>
CC: <linux-arm-msm@...r.kernel.org>, <dri-devel@...ts.freedesktop.org>,
<freedreno@...ts.freedesktop.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 4/5] drm/msm/dpu: drop TE2 definitions
On 3/1/2025 1:24 AM, Dmitry Baryshkov wrote:
> Neither DPU driver nor vendor SDE driver do not use TE2 definitions
> (and, in case of SDE driver, never did). Semantics of the TE2 feature
> bit and .te2 sblk are not completely clear. Drop these bits from the
> catalog with the possibility of reintroducing them later if we need to
> support ppsplit.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
> ---
> drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_1_7_msm8996.h | 8 ++++----
> drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_3_0_msm8998.h | 8 ++++----
> drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_3_2_sdm660.h | 8 ++++----
> drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_3_3_sdm630.h | 4 ++--
> drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_4_0_sdm845.h | 8 ++++----
> drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 17 -----------------
> drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h | 6 +-----
> 7 files changed, 19 insertions(+), 40 deletions(-)
>
<snip>
>
> @@ -465,22 +459,11 @@ static const struct dpu_dspp_sub_blks sdm845_dspp_sblk = {
> /*************************************************************
> * PINGPONG sub blocks config
> *************************************************************/
> -static const struct dpu_pingpong_sub_blks msm8996_pp_sblk_te = {
> - .te2 = {.name = "te2", .base = 0x2000, .len = 0x0,
> - .version = 0x1},
> -};
>
> static const struct dpu_pingpong_sub_blks msm8996_pp_sblk = {
> /* No dither block */
> };
>
> -static const struct dpu_pingpong_sub_blks sdm845_pp_sblk_te = {
> - .te2 = {.name = "te2", .base = 0x2000, .len = 0x0,
> - .version = 0x1},
> - .dither = {.name = "dither", .base = 0x30e0,
> - .len = 0x20, .version = 0x10000},
> -};
> -
Agreed about TE2. I do not see even te2 sub-block programming in
dpu_hw_pingpong but why do we also need to drop dither?
That one is being used in dpu_hw_pp_setup_dither().
> static const struct dpu_pingpong_sub_blks sdm845_pp_sblk = {
> .dither = {.name = "dither", .base = 0x30e0,
> .len = 0x20, .version = 0x10000},
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h
> index 4cea19e1a20380c56ae014f2d33a6884a72e0ca0..07b50e23ee954b96e7e6bd684dc12823f99d630b 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h
> @@ -115,7 +115,6 @@ enum {
>
> /**
> * PINGPONG sub-blocks
> - * @DPU_PINGPONG_TE2 Additional tear check block for split pipes
> * @DPU_PINGPONG_SPLIT PP block supports split fifo
> * @DPU_PINGPONG_SLAVE PP block is a suitable slave for split fifo
> * @DPU_PINGPONG_DITHER Dither blocks
> @@ -123,8 +122,7 @@ enum {
> * @DPU_PINGPONG_MAX
> */
> enum {
> - DPU_PINGPONG_TE2 = 0x1,
> - DPU_PINGPONG_SPLIT,
> + DPU_PINGPONG_SPLIT = 0x1,
> DPU_PINGPONG_SLAVE,
> DPU_PINGPONG_DITHER,
> DPU_PINGPONG_DSC,
> @@ -404,8 +402,6 @@ struct dpu_dspp_sub_blks {
> };
>
> struct dpu_pingpong_sub_blks {
> - struct dpu_pp_blk te;
> - struct dpu_pp_blk te2;
> struct dpu_pp_blk dither;
> };
>
>
Powered by blists - more mailing lists