Lines Matching +full:mt8173 +full:- +full:gce
1 // SPDX-License-Identifier: GPL-2.0-only
12 #include <linux/soc/mediatek/mtk-cmdq.h>
40 * struct mtk_disp_aal - Display Adaptive Ambient Light driver structure
57 return clk_prepare_enable(aal->clk); in mtk_aal_clk_enable()
64 clk_disable_unprepare(aal->clk); in mtk_aal_clk_disable()
77 mtk_ddp_write(cmdq_pkt, sz, &aal->cmdq_reg, aal->regs, DISP_AAL_SIZE); in mtk_aal_config()
78 mtk_ddp_write(cmdq_pkt, sz, &aal->cmdq_reg, aal->regs, DISP_AAL_OUTPUT_SIZE); in mtk_aal_config()
82 * mtk_aal_gamma_get_lut_size() - Get gamma LUT size for AAL
91 if (aal->data && aal->data->has_gamma) in mtk_aal_gamma_get_lut_size()
104 if (!(aal->data && aal->data->has_gamma)) in mtk_aal_gamma_set()
108 if (!state->gamma_lut) in mtk_aal_gamma_set()
111 lut = (struct drm_color_lut *)state->gamma_lut->data; in mtk_aal_gamma_set()
123 writel(word, aal->regs + DISP_AAL_GAMMA_LUT + i * 4); in mtk_aal_gamma_set()
126 cfg_val = readl(aal->regs + DISP_AAL_CFG); in mtk_aal_gamma_set()
134 writel(cfg_val, aal->regs + DISP_AAL_CFG); in mtk_aal_gamma_set()
141 writel(AAL_EN, aal->regs + DISP_AAL_EN); in mtk_aal_start()
148 writel_relaxed(0x0, aal->regs + DISP_AAL_EN); in mtk_aal_stop()
169 struct device *dev = &pdev->dev; in mtk_disp_aal_probe()
175 return -ENOMEM; in mtk_disp_aal_probe()
177 priv->clk = devm_clk_get(dev, NULL); in mtk_disp_aal_probe()
178 if (IS_ERR(priv->clk)) in mtk_disp_aal_probe()
179 return dev_err_probe(dev, PTR_ERR(priv->clk), in mtk_disp_aal_probe()
182 priv->regs = devm_platform_ioremap_resource(pdev, 0); in mtk_disp_aal_probe()
183 if (IS_ERR(priv->regs)) in mtk_disp_aal_probe()
184 return dev_err_probe(dev, PTR_ERR(priv->regs), in mtk_disp_aal_probe()
188 ret = cmdq_dev_get_client_reg(dev, &priv->cmdq_reg, 0); in mtk_disp_aal_probe()
190 dev_dbg(dev, "get mediatek,gce-client-reg fail!\n"); in mtk_disp_aal_probe()
193 priv->data = of_device_get_match_data(dev); in mtk_disp_aal_probe()
205 component_del(&pdev->dev, &mtk_disp_aal_component_ops); in mtk_disp_aal_remove()
213 { .compatible = "mediatek,mt8173-disp-aal", .data = &mt8173_aal_driver_data },
214 { .compatible = "mediatek,mt8183-disp-aal" },
223 .name = "mediatek-disp-aal",