Re: [PATCH v23 06/14] drm/mediatek: add display merge mute/unmute support for MT8195
flat view
From: CK Hu <hidden>
Date: 2022-06-28 06:09:42
Also in:
dri-devel, linux-mediatek, llvm
Hi, Nancy: On Mon, 2022-06-20 at 17:19 +0800, Nancy.Lin wrote:
Add merge mute/unmute setting for MT8195. MT8195 Vdosys1 merge1~merge4 support HW mute function.
Applied to mediatek-drm-next [1], thanks. [1] https://git.kernel.org/pub/scm/linux/kernel/git/chunkuang.hu/linux.git/log/?h=mediatek-drm-next Regards, CK
quoted hunk ↗ jump to hunk
Signed-off-by: Nancy.Lin <redacted> Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org> Reviewed-by: AngeloGioacchino Del Regno < angelogioacchino.delregno@collabora.com> Tested-by: AngeloGioacchino Del Regno < angelogioacchino.delregno@collabora.com> Tested-by: Bo-Chen Chen <redacted> --- drivers/gpu/drm/mediatek/mtk_disp_merge.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)diff --git a/drivers/gpu/drm/mediatek/mtk_disp_merge.cb/drivers/gpu/drm/mediatek/mtk_disp_merge.c index c7af5ccab916..2e13d2fb429e 100644--- a/drivers/gpu/drm/mediatek/mtk_disp_merge.c +++ b/drivers/gpu/drm/mediatek/mtk_disp_merge.c@@ -58,12 +58,15 @@ #define FLD_PREULTRA_TH_LOW GENMASK(15, 0) #define FLD_PREULTRA_TH_HIGH GENMASK(31, 16) +#define DISP_REG_MERGE_MUTE_0 0xf00 + struct mtk_disp_merge { void __iomem *regs; struct clk *clk; struct clk *async_clk; struct cmdq_client_reg cmdq_reg; bool fifo_en; + bool mute_support; }; void mtk_merge_start(struct device *dev)@@ -80,6 +83,10 @@ void mtk_merge_start_cmdq(struct device *dev,struct cmdq_pkt *cmdq_pkt) { struct mtk_disp_merge *priv = dev_get_drvdata(dev); + if (priv->mute_support) + mtk_ddp_write(cmdq_pkt, 0x0, &priv->cmdq_reg, priv-quoted
regs,+ DISP_REG_MERGE_MUTE_0); + mtk_ddp_write(cmdq_pkt, 1, &priv->cmdq_reg, priv->regs, DISP_REG_MERGE_CTRL); }@@ -88,6 +95,10 @@ void mtk_merge_stop_cmdq(struct device *dev,struct cmdq_pkt *cmdq_pkt) { struct mtk_disp_merge *priv = dev_get_drvdata(dev); + if (priv->mute_support) + mtk_ddp_write(cmdq_pkt, 0x1, &priv->cmdq_reg, priv-quoted
regs,+ DISP_REG_MERGE_MUTE_0); + mtk_ddp_write(cmdq_pkt, 0, &priv->cmdq_reg, priv->regs, DISP_REG_MERGE_CTRL); }@@ -262,6 +273,8 @@ static int mtk_disp_merge_probe(structplatform_device *pdev) priv->fifo_en = of_property_read_bool(dev->of_node, "mediatek,merge-fifo- en"); + priv->mute_support = of_property_read_bool(dev->of_node, + "mediatek,merge- mute"); platform_set_drvdata(pdev, priv); ret = component_add(dev, &mtk_disp_merge_component_ops);
_______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel