Message ID | 20230912075805.11432-1-moudy.ho@mediatek.com |
---|---|
Headers | show |
Series | add support MDP3 on MT8195 platform | expand |
Hi Moudy, On 12/09/2023 09:57, Moudy Ho wrote: > Changes since v4: > - Rebase on v6.6-rc1 > - Remove any unnecessary DTS settings. > - Adjust the usage of MOD and clock in blending components. > > Changes since v3: > - Depend on : > [1] https://patchwork.kernel.org/project/linux-media/list/?series=719841 > - Suggested by Krzysztof, integrating all newly added bindings for > the mt8195 MDP3 into the file "mediatek,mt8195-mdp3.yaml". > - Revise MDP3 nodes with generic names. > > Changes since v2: > - Depend on : > [1] MMSYS/MUTEX: https://patchwork.kernel.org/project/linux-mediatek/list/?series=711592 > [2] MDP3: https://patchwork.kernel.org/project/linux-mediatek/list/?series=711618 > - Suggested by Rob to revise MDP3 bindings to pass dtbs check > - Add parallel paths feature. > - Add blended components settings. > > Changes since v1: > - Depend on : > [1] MDP3 : https://patchwork.kernel.org/project/linux-mediatek/list/?series=698872 > [2] MMSYS/MUTEX: https://patchwork.kernel.org/project/linux-mediatek/list/?series=684959 > - Fix compilation failure due to use of undeclared identifier in file "mtk-mdp3-cmdq.c" > > Hello, > > This patch is used to add support for MDP3 on the MT8195 platform that > contains more picture quality components, and can arrange more pipelines > through two sets of MMSYS and MUTEX respectively. I ran this series through our build system and I got the following compile warning: drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c: In function 'mdp_path_config.isra': drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:449:51: warning: 'ctx' may be used uninitialized [-Wmaybe-uninitialized] 449 | out = CFG_COMP(MT8195, ctx->param, outputs[0]); | ~~~^~~~~~~ drivers/media/platform/mediatek/mdp3/mtk-img-ipi.h:137:25: note: in definition of macro 'CFG_COMP' 137 | (IS_ERR_OR_NULL(comp) ? 0 : _CFG_COMP(plat, comp, mem)) | ^~~~ drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:402:30: note: 'ctx' was declared here 402 | struct mdp_comp_ctx *ctx; | ^~~ And also a few smatch warnings/errors: drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c:871 wait_wrot_event() warn: variable dereferenced before check 'mdp_cfg' (see line 864) drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c:1024 reset_luma_hist() warn: variable dereferenced before check 'mdp_cfg' (see line 1015) drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:447 mdp_path_config() error: potentially dereferencing uninitialized 'ctx'. drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:449 mdp_path_config() error: potentially dereferencing uninitialized 'ctx'. You can run the same tests yourself, see this announcement: https://lore.kernel.org/linux-media/18989016-6392-a77b-6cf7-1223c9161def@xs4all.nl/ Regards, Hans > > Moudy Ho (14): > arm64: dts: mediatek: mt8183: correct MDP3 DMA-related nodes > arm64: dts: mediatek: mt8195: add MDP3 nodes > media: platform: mtk-mdp3: add support second sets of MMSYS > media: platform: mtk-mdp3: add support second sets of MUTEX > media: platform: mtk-mdp3: introduce more pipelines from MT8195 > media: platform: mtk-mdp3: introduce more MDP3 components > media: platform: mtk-mdp3: add checks for dummy components > media: platform: mtk-mdp3: avoid multiple driver registrations > media: platform: mtk-mdp3: extend GCE event waiting in RDMA and WROT > media: platform: mtk-mdp3: add support for blending multiple > components > media: platform: mtk-mdp3: add mt8195 platform configuration > media: platform: mtk-mdp3: add mt8195 shared memory configurations > media: platform: mtk-mdp3: add mt8195 MDP3 component settings > media: platform: mtk-mdp3: add support for parallel pipe to improve > FPS > > arch/arm64/boot/dts/mediatek/mt8183.dtsi | 6 +- > arch/arm64/boot/dts/mediatek/mt8195.dtsi | 378 ++++++++ > .../platform/mediatek/mdp3/mdp_cfg_data.c | 729 ++++++++++++++- > .../platform/mediatek/mdp3/mdp_reg_aal.h | 25 + > .../platform/mediatek/mdp3/mdp_reg_color.h | 31 + > .../media/platform/mediatek/mdp3/mdp_reg_fg.h | 23 + > .../platform/mediatek/mdp3/mdp_reg_hdr.h | 31 + > .../platform/mediatek/mdp3/mdp_reg_merge.h | 25 + > .../platform/mediatek/mdp3/mdp_reg_ovl.h | 25 + > .../platform/mediatek/mdp3/mdp_reg_pad.h | 21 + > .../platform/mediatek/mdp3/mdp_reg_rdma.h | 24 + > .../platform/mediatek/mdp3/mdp_reg_rsz.h | 2 + > .../platform/mediatek/mdp3/mdp_reg_tdshp.h | 34 + > .../platform/mediatek/mdp3/mdp_reg_wrot.h | 8 + > .../platform/mediatek/mdp3/mdp_sm_mt8195.h | 283 ++++++ > .../platform/mediatek/mdp3/mtk-img-ipi.h | 4 + > .../platform/mediatek/mdp3/mtk-mdp3-cfg.h | 2 + > .../platform/mediatek/mdp3/mtk-mdp3-cmdq.c | 447 +++++++-- > .../platform/mediatek/mdp3/mtk-mdp3-cmdq.h | 1 + > .../platform/mediatek/mdp3/mtk-mdp3-comp.c | 860 +++++++++++++++++- > .../platform/mediatek/mdp3/mtk-mdp3-comp.h | 93 +- > .../platform/mediatek/mdp3/mtk-mdp3-core.c | 103 ++- > .../platform/mediatek/mdp3/mtk-mdp3-core.h | 33 +- > .../platform/mediatek/mdp3/mtk-mdp3-m2m.c | 15 + > .../platform/mediatek/mdp3/mtk-mdp3-regs.c | 18 + > .../platform/mediatek/mdp3/mtk-mdp3-regs.h | 1 + > .../platform/mediatek/mdp3/mtk-mdp3-vpu.c | 3 +- > 27 files changed, 3051 insertions(+), 174 deletions(-) > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_aal.h > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_color.h > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_fg.h > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_hdr.h > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_merge.h > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_ovl.h > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_pad.h > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_tdshp.h > create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_sm_mt8195.h >
On Fri, 2023-09-15 at 12:27 +0200, Hans Verkuil wrote: > > External email : Please do not click links or open attachments until > you have verified the sender or the content. > Hi Moudy, > > On 12/09/2023 09:57, Moudy Ho wrote: > > Changes since v4: > > - Rebase on v6.6-rc1 > > - Remove any unnecessary DTS settings. > > - Adjust the usage of MOD and clock in blending components. > > > > Changes since v3: > > - Depend on : > > [1] > https://patchwork.kernel.org/project/linux-media/list/?series=719841 > > - Suggested by Krzysztof, integrating all newly added bindings for > > the mt8195 MDP3 into the file "mediatek,mt8195-mdp3.yaml". > > - Revise MDP3 nodes with generic names. > > > > Changes since v2: > > - Depend on : > > [1] MMSYS/MUTEX: > https://patchwork.kernel.org/project/linux-mediatek/list/?series=711592 > > [2] MDP3: > https://patchwork.kernel.org/project/linux-mediatek/list/?series=711618 > > - Suggested by Rob to revise MDP3 bindings to pass dtbs check > > - Add parallel paths feature. > > - Add blended components settings. > > > > Changes since v1: > > - Depend on : > > [1] MDP3 : > https://patchwork.kernel.org/project/linux-mediatek/list/?series=698872 > > [2] MMSYS/MUTEX: > https://patchwork.kernel.org/project/linux-mediatek/list/?series=684959 > > - Fix compilation failure due to use of undeclared identifier in > file "mtk-mdp3-cmdq.c" > > > > Hello, > > > > This patch is used to add support for MDP3 on the MT8195 platform > that > > contains more picture quality components, and can arrange more > pipelines > > through two sets of MMSYS and MUTEX respectively. > > I ran this series through our build system and I got the following > compile warning: > > drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c: In function > 'mdp_path_config.isra': > drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:449:51: warning: > 'ctx' may be used uninitialized [-Wmaybe-uninitialized] > 449 | out = CFG_COMP(MT8195, ctx->param, > outputs[0]); > | ~~~^~~~~~~ > drivers/media/platform/mediatek/mdp3/mtk-img-ipi.h:137:25: note: in > definition of macro 'CFG_COMP' > 137 | (IS_ERR_OR_NULL(comp) ? 0 : _CFG_COMP(plat, comp, > mem)) > | ^~~~ > drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:402:30: note: > 'ctx' was declared here > 402 | struct mdp_comp_ctx *ctx; > | ^~~ > > And also a few smatch warnings/errors: > > drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c:871 > wait_wrot_event() warn: variable dereferenced before check 'mdp_cfg' > (see line 864) > drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c:1024 > reset_luma_hist() warn: variable dereferenced before check 'mdp_cfg' > (see line 1015) > drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:447 > mdp_path_config() error: potentially dereferencing uninitialized > 'ctx'. > drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:449 > mdp_path_config() error: potentially dereferencing uninitialized > 'ctx'. > > You can run the same tests yourself, see this announcement: > > https://lore.kernel.org/linux-media/18989016-6392-a77b-6cf7-1223c9161def@xs4all.nl/ > > Regards, > > Hans > Hi Hans, Thanks for the reminder. I will run the build script to test this series and rectify any warnings. Sincerely, Moudy > > > > Moudy Ho (14): > > arm64: dts: mediatek: mt8183: correct MDP3 DMA-related nodes > > arm64: dts: mediatek: mt8195: add MDP3 nodes > > media: platform: mtk-mdp3: add support second sets of MMSYS > > media: platform: mtk-mdp3: add support second sets of MUTEX > > media: platform: mtk-mdp3: introduce more pipelines from MT8195 > > media: platform: mtk-mdp3: introduce more MDP3 components > > media: platform: mtk-mdp3: add checks for dummy components > > media: platform: mtk-mdp3: avoid multiple driver registrations > > media: platform: mtk-mdp3: extend GCE event waiting in RDMA and > WROT > > media: platform: mtk-mdp3: add support for blending multiple > > components > > media: platform: mtk-mdp3: add mt8195 platform configuration > > media: platform: mtk-mdp3: add mt8195 shared memory > configurations > > media: platform: mtk-mdp3: add mt8195 MDP3 component settings > > media: platform: mtk-mdp3: add support for parallel pipe to > improve > > FPS > > > > arch/arm64/boot/dts/mediatek/mt8183.dtsi | 6 +- > > arch/arm64/boot/dts/mediatek/mt8195.dtsi | 378 ++++++++ > > .../platform/mediatek/mdp3/mdp_cfg_data.c | 729 > ++++++++++++++- > > .../platform/mediatek/mdp3/mdp_reg_aal.h | 25 + > > .../platform/mediatek/mdp3/mdp_reg_color.h | 31 + > > .../media/platform/mediatek/mdp3/mdp_reg_fg.h | 23 + > > .../platform/mediatek/mdp3/mdp_reg_hdr.h | 31 + > > .../platform/mediatek/mdp3/mdp_reg_merge.h | 25 + > > .../platform/mediatek/mdp3/mdp_reg_ovl.h | 25 + > > .../platform/mediatek/mdp3/mdp_reg_pad.h | 21 + > > .../platform/mediatek/mdp3/mdp_reg_rdma.h | 24 + > > .../platform/mediatek/mdp3/mdp_reg_rsz.h | 2 + > > .../platform/mediatek/mdp3/mdp_reg_tdshp.h | 34 + > > .../platform/mediatek/mdp3/mdp_reg_wrot.h | 8 + > > .../platform/mediatek/mdp3/mdp_sm_mt8195.h | 283 ++++++ > > .../platform/mediatek/mdp3/mtk-img-ipi.h | 4 + > > .../platform/mediatek/mdp3/mtk-mdp3-cfg.h | 2 + > > .../platform/mediatek/mdp3/mtk-mdp3-cmdq.c | 447 +++++++-- > > .../platform/mediatek/mdp3/mtk-mdp3-cmdq.h | 1 + > > .../platform/mediatek/mdp3/mtk-mdp3-comp.c | 860 > +++++++++++++++++- > > .../platform/mediatek/mdp3/mtk-mdp3-comp.h | 93 +- > > .../platform/mediatek/mdp3/mtk-mdp3-core.c | 103 ++- > > .../platform/mediatek/mdp3/mtk-mdp3-core.h | 33 +- > > .../platform/mediatek/mdp3/mtk-mdp3-m2m.c | 15 + > > .../platform/mediatek/mdp3/mtk-mdp3-regs.c | 18 + > > .../platform/mediatek/mdp3/mtk-mdp3-regs.h | 1 + > > .../platform/mediatek/mdp3/mtk-mdp3-vpu.c | 3 +- > > 27 files changed, 3051 insertions(+), 174 deletions(-) > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_reg_aal.h > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_reg_color.h > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_reg_fg.h > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_reg_hdr.h > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_reg_merge.h > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_reg_ovl.h > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_reg_pad.h > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_reg_tdshp.h > > create mode 100644 > drivers/media/platform/mediatek/mdp3/mdp_sm_mt8195.h > > >