mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jessica Zhang <quic_jesszhan@quicinc.com>
To: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>,
	Rob Clark <robdclark@gmail.com>,
	Abhinav Kumar <quic_abhinavk@quicinc.com>,
	Sean Paul <sean@poorly.run>,
	Marijn Suijten <marijn.suijten@somainline.org>,
	"David Airlie" <airlied@gmail.com>,
	Simona Vetter <simona@ffwll.ch>, Vinod Koul <vkoul@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>
Cc: <linux-arm-msm@vger.kernel.org>,
	<dri-devel@lists.freedesktop.org>,
	<freedreno@lists.freedesktop.org>, <linux-kernel@vger.kernel.org>,
	"Dmitry Baryshkov" <dmitry.baryshkov@linaro.org>
Subject: Re: [PATCH v3 00/33] drm/msm/dpu: rework HW block feature handling
Date: Mon, 5 May 2025 16:28:17 -0700	[thread overview]
Message-ID: <342326dd-3739-4a8f-b83d-fe21bb67b46b@quicinc.com> (raw)
In-Reply-To: <20250424-dpu-drop-features-v3-0-cdaca81d356f@oss.qualcomm.com>



On 4/24/2025 2:30 AM, Dmitry Baryshkov wrote:
> Some time ago we started the process of converting HW blocks to use
> revision-based checks instead of having feature bits (which are easy to
> miss or to set incorrectly). Then the process of such a conversion was
> postponed. (Mostly) finish the conversion. The only blocks which still
> have feature bits are SSPP, WB and VBIF. In the rare cases where
> behaviour actually differs from platform to platform (or from block to
> block) use unsigned long bitfields, they have simpler syntax to be
> checked and don't involve test_bit() invocation.
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>

Hi Dmitry,

I agree that some features like *_HAS_LAYER_EXT4 and INTF_INPUT_CTRL can 
be replaced with a general version check.
However, for other features (such as DPU_MIXER_SOURCESPLIT --> 
dpu_lm_cfg::sourcesplit), it seems to me, you've just replaced the 
feature bit with an equivalent catalog field.
So while some features can be dropped from the feature flag list, it 
seems that we would still need feature flags (in some form) for others.

Overall though, I think that dropping the feature bits makes it less 
clear exactly what features are supported for which chipsets and makes 
it harder to relegate features to specific chipsets.

So while I do see where you're coming from here, I'm a bit hesitant of 
the overall move to drop feature flags for the reasons above.

Thanks,

Jessica Zhang

> ---
> Changes in v3:
> - Repost, fixing email/author issues caused by b4 / mailmap interaction
> - Link to v2: https://lore.kernel.org/r/20250424-dpu-drop-features-v2-0-0a9a66a7b3a2@oss.qualcomm.com
> 
> Changes in v2:
> - Rebased on top of the current msm-next
> - Link to v1: https://lore.kernel.org/r/20241214-dpu-drop-features-v1-0-988f0662cb7e@linaro.org
> 
> ---
> Dmitry Baryshkov (33):
>        drm/msm/dpu: stop passing mdss_ver to setup_timing_gen()
>        drm/msm/dpu: drop INTF_SC7280_MASK
>        drm/msm/dpu: inline _setup_ctl_ops()
>        drm/msm/dpu: inline _setup_dsc_ops()
>        drm/msm/dpu: inline _setup_dspp_ops()
>        drm/msm/dpu: inline _setup_mixer_ops()
>        drm/msm/dpu: remove DSPP_SC7180_MASK
>        drm/msm/dpu: get rid of DPU_CTL_HAS_LAYER_EXT4
>        drm/msm/dpu: get rid of DPU_CTL_ACTIVE_CFG
>        drm/msm/dpu: get rid of DPU_CTL_FETCH_ACTIVE
>        drm/msm/dpu: get rid of DPU_CTL_DSPP_SUB_BLOCK_FLUSH
>        drm/msm/dpu: get rid of DPU_CTL_VM_CFG
>        drm/msm/dpu: get rid of DPU_DATA_HCTL_EN
>        drm/msm/dpu: get rid of DPU_INTF_STATUS_SUPPORTED
>        drm/msm/dpu: get rid of DPU_INTF_INPUT_CTRL
>        drm/msm/dpu: get rid of DPU_PINGPONG_DSC
>        drm/msm/dpu: get rid of DPU_PINGPONG_DITHER
>        drm/msm/dpu: get rid of DPU_MDP_VSYNC_SEL
>        drm/msm/dpu: get rid of DPU_MDP_PERIPH_0_REMOVED
>        drm/msm/dpu: get rid of DPU_MDP_AUDIO_SELECT
>        drm/msm/dpu: get rid of DPU_MIXER_COMBINED_ALPHA
>        drm/msm/dpu: get rid of DPU_DIM_LAYER
>        drm/msm/dpu: get rid of DPU_DSC_HW_REV_1_2
>        drm/msm/dpu: get rid of DPU_DSC_OUTPUT_CTRL
>        drm/msm/dpu: get rid of DPU_WB_INPUT_CTRL
>        drm/msm/dpu: get rid of DPU_SSPP_QOS_8LVL
>        drm/msm/dpu: drop unused MDP TOP features
>        drm/msm/dpu: drop ununused PINGPONG features
>        drm/msm/dpu: drop ununused MIXER features
>        drm/msm/dpu: get rid of DPU_MIXER_SOURCESPLIT
>        drm/msm/dpu: get rid of DPU_DSC_NATIVE_42x_EN
>        drm/msm/dpu: get rid of DPU_CTL_SPLIT_DISPLAY
>        drm/msm/dpu: move features out of the DPU_HW_BLK_INFO
> 
>   .../drm/msm/disp/dpu1/catalog/dpu_10_0_sm8650.h    |  53 +++-----
>   .../drm/msm/disp/dpu1/catalog/dpu_1_14_msm8937.h   |   4 -
>   .../drm/msm/disp/dpu1/catalog/dpu_1_15_msm8917.h   |   3 -
>   .../drm/msm/disp/dpu1/catalog/dpu_1_16_msm8953.h   |   4 -
>   .../drm/msm/disp/dpu1/catalog/dpu_1_7_msm8996.h    |  15 +--
>   .../drm/msm/disp/dpu1/catalog/dpu_3_0_msm8998.h    |  19 +--
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_3_2_sdm660.h |  19 +--
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_3_3_sdm630.h |  12 +-
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_4_0_sdm845.h |  21 +---
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_4_1_sdm670.h |  11 +-
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h |  43 ++-----
>   .../drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h    |  45 ++-----
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_2_sm7150.h |  31 ++---
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_3_sm6150.h |  19 +--
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_4_sm6125.h |  16 +--
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h |  42 ++-----
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_2_sc7180.h |  14 +--
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_3_sm6115.h |   5 -
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_4_sm6350.h |  16 +--
>   .../drm/msm/disp/dpu1/catalog/dpu_6_5_qcm2290.h    |   5 -
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_9_sm6375.h |   6 -
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h |  44 ++-----
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h |  22 +---
>   .../drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h   |  50 ++------
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h |  47 ++------
>   .../drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h    |  53 ++------
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h |  47 ++------
>   .../drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h   |  52 ++------
>   .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c   |   2 +-
>   .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c   |   3 +-
>   .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_wb.c    |   7 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c     |  51 +-------
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h     | 134 ++-------------------
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c         | 108 ++++++++---------
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h         |   4 +
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.c         |  21 ++--
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.h         |   3 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc_1_2.c     |   7 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dspp.c        |  10 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.c        |  14 +--
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.h        |   5 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.c          |  28 ++---
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.h          |   3 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_merge3d.c     |   5 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c    |   4 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c        |   5 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h        |   2 +
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.c         |  11 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_wb.c          |   2 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c            |   4 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c             |  17 ++-
>   51 files changed, 304 insertions(+), 864 deletions(-)
> ---
> base-commit: a4efc119e8149503e5fe9e9f7828b79af2fe77c6
> change-id: 20241213-dpu-drop-features-7603dc3ee189
> 
> Best regards,


  parent reply	other threads:[~2025-05-05 23:28 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-24  9:30 Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 01/33] drm/msm/dpu: stop passing mdss_ver to setup_timing_gen() Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 02/33] drm/msm/dpu: drop INTF_SC7280_MASK Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 03/33] drm/msm/dpu: inline _setup_ctl_ops() Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 04/33] drm/msm/dpu: inline _setup_dsc_ops() Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 05/33] drm/msm/dpu: inline _setup_dspp_ops() Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 06/33] drm/msm/dpu: inline _setup_mixer_ops() Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 07/33] drm/msm/dpu: remove DSPP_SC7180_MASK Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 08/33] drm/msm/dpu: get rid of DPU_CTL_HAS_LAYER_EXT4 Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 09/33] drm/msm/dpu: get rid of DPU_CTL_ACTIVE_CFG Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 10/33] drm/msm/dpu: get rid of DPU_CTL_FETCH_ACTIVE Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 11/33] drm/msm/dpu: get rid of DPU_CTL_DSPP_SUB_BLOCK_FLUSH Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 12/33] drm/msm/dpu: get rid of DPU_CTL_VM_CFG Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 13/33] drm/msm/dpu: get rid of DPU_DATA_HCTL_EN Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 14/33] drm/msm/dpu: get rid of DPU_INTF_STATUS_SUPPORTED Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 15/33] drm/msm/dpu: get rid of DPU_INTF_INPUT_CTRL Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 16/33] drm/msm/dpu: get rid of DPU_PINGPONG_DSC Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 17/33] drm/msm/dpu: get rid of DPU_PINGPONG_DITHER Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 18/33] drm/msm/dpu: get rid of DPU_MDP_VSYNC_SEL Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 19/33] drm/msm/dpu: get rid of DPU_MDP_PERIPH_0_REMOVED Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 20/33] drm/msm/dpu: get rid of DPU_MDP_AUDIO_SELECT Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 21/33] drm/msm/dpu: get rid of DPU_MIXER_COMBINED_ALPHA Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 22/33] drm/msm/dpu: get rid of DPU_DIM_LAYER Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 23/33] drm/msm/dpu: get rid of DPU_DSC_HW_REV_1_2 Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 24/33] drm/msm/dpu: get rid of DPU_DSC_OUTPUT_CTRL Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 25/33] drm/msm/dpu: get rid of DPU_WB_INPUT_CTRL Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 26/33] drm/msm/dpu: get rid of DPU_SSPP_QOS_8LVL Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 27/33] drm/msm/dpu: drop unused MDP TOP features Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 28/33] drm/msm/dpu: drop ununused PINGPONG features Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 29/33] drm/msm/dpu: drop ununused MIXER features Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 30/33] drm/msm/dpu: get rid of DPU_MIXER_SOURCESPLIT Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 31/33] drm/msm/dpu: get rid of DPU_DSC_NATIVE_42x_EN Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 32/33] drm/msm/dpu: get rid of DPU_CTL_SPLIT_DISPLAY Dmitry Baryshkov
2025-04-24  9:30 ` [PATCH v3 33/33] drm/msm/dpu: move features out of the DPU_HW_BLK_INFO Dmitry Baryshkov
2025-05-05 23:28 ` Jessica Zhang [this message]
2025-05-06 12:46   ` [PATCH v3 00/33] drm/msm/dpu: rework HW block feature handling 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=342326dd-3739-4a8f-b83d-fe21bb67b46b@quicinc.com \
    --to=quic_jesszhan@quicinc.com \
    --cc=airlied@gmail.com \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=dmitry.baryshkov@oss.qualcomm.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=konradybcio@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marijn.suijten@somainline.org \
    --cc=quic_abhinavk@quicinc.com \
    --cc=robdclark@gmail.com \
    --cc=sean@poorly.run \
    --cc=simona@ffwll.ch \
    --cc=vkoul@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®