Lines Matching +full:reg +full:- +full:names
1 // SPDX-License-Identifier: GPL-2.0
7 #include "phy-mtk-hdmi.h"
21 void __iomem *reg = hdmi_phy->regs + offset; in mtk_hdmi_phy_clear_bits() local
24 tmp = readl(reg); in mtk_hdmi_phy_clear_bits()
26 writel(tmp, reg); in mtk_hdmi_phy_clear_bits()
32 void __iomem *reg = hdmi_phy->regs + offset; in mtk_hdmi_phy_set_bits() local
35 tmp = readl(reg); in mtk_hdmi_phy_set_bits()
37 writel(tmp, reg); in mtk_hdmi_phy_set_bits()
43 void __iomem *reg = hdmi_phy->regs + offset; in mtk_hdmi_phy_mask() local
46 tmp = readl(reg); in mtk_hdmi_phy_mask()
48 writel(tmp, reg); in mtk_hdmi_phy_mask()
61 ret = clk_prepare_enable(hdmi_phy->pll); in mtk_hdmi_phy_power_on()
65 hdmi_phy->conf->hdmi_phy_enable_tmds(hdmi_phy); in mtk_hdmi_phy_power_on()
73 hdmi_phy->conf->hdmi_phy_disable_tmds(hdmi_phy); in mtk_hdmi_phy_power_off()
74 clk_disable_unprepare(hdmi_phy->pll); in mtk_hdmi_phy_power_off()
82 if (hdmi_phy && hdmi_phy->conf && in mtk_hdmi_phy_dev_get_ops()
83 hdmi_phy->conf->hdmi_phy_enable_tmds && in mtk_hdmi_phy_dev_get_ops()
84 hdmi_phy->conf->hdmi_phy_disable_tmds) in mtk_hdmi_phy_dev_get_ops()
87 dev_err(hdmi_phy->dev, "Failed to get dev ops of phy\n"); in mtk_hdmi_phy_dev_get_ops()
94 clk_init->flags = hdmi_phy->conf->flags; in mtk_hdmi_phy_clk_get_data()
95 clk_init->ops = hdmi_phy->conf->hdmi_phy_clk_ops; in mtk_hdmi_phy_clk_get_data()
100 struct device *dev = &pdev->dev; in mtk_hdmi_phy_probe()
116 return -ENOMEM; in mtk_hdmi_phy_probe()
119 hdmi_phy->regs = devm_ioremap_resource(dev, mem); in mtk_hdmi_phy_probe()
120 if (IS_ERR(hdmi_phy->regs)) { in mtk_hdmi_phy_probe()
121 ret = PTR_ERR(hdmi_phy->regs); in mtk_hdmi_phy_probe()
129 dev_err(&pdev->dev, "Failed to get PLL reference clock: %d\n", in mtk_hdmi_phy_probe()
135 ret = of_property_read_string(dev->of_node, "clock-output-names", in mtk_hdmi_phy_probe()
138 dev_err(dev, "Failed to read clock-output-names: %d\n", ret); in mtk_hdmi_phy_probe()
142 hdmi_phy->dev = dev; in mtk_hdmi_phy_probe()
143 hdmi_phy->conf = in mtk_hdmi_phy_probe()
146 hdmi_phy->pll_hw.init = &clk_init; in mtk_hdmi_phy_probe()
147 hdmi_phy->pll = devm_clk_register(dev, &hdmi_phy->pll_hw); in mtk_hdmi_phy_probe()
148 if (IS_ERR(hdmi_phy->pll)) { in mtk_hdmi_phy_probe()
149 ret = PTR_ERR(hdmi_phy->pll); in mtk_hdmi_phy_probe()
154 ret = of_property_read_u32(dev->of_node, "mediatek,ibias", in mtk_hdmi_phy_probe()
155 &hdmi_phy->ibias); in mtk_hdmi_phy_probe()
157 dev_err(&pdev->dev, "Failed to get ibias: %d\n", ret); in mtk_hdmi_phy_probe()
161 ret = of_property_read_u32(dev->of_node, "mediatek,ibias_up", in mtk_hdmi_phy_probe()
162 &hdmi_phy->ibias_up); in mtk_hdmi_phy_probe()
164 dev_err(&pdev->dev, "Failed to get ibias up: %d\n", ret); in mtk_hdmi_phy_probe()
169 hdmi_phy->drv_imp_clk = 0x30; in mtk_hdmi_phy_probe()
170 hdmi_phy->drv_imp_d2 = 0x30; in mtk_hdmi_phy_probe()
171 hdmi_phy->drv_imp_d1 = 0x30; in mtk_hdmi_phy_probe()
172 hdmi_phy->drv_imp_d0 = 0x30; in mtk_hdmi_phy_probe()
187 if (hdmi_phy->conf->pll_default_off) in mtk_hdmi_phy_probe()
188 hdmi_phy->conf->hdmi_phy_disable_tmds(hdmi_phy); in mtk_hdmi_phy_probe()
190 return of_clk_add_provider(dev->of_node, of_clk_src_simple_get, in mtk_hdmi_phy_probe()
191 hdmi_phy->pll); in mtk_hdmi_phy_probe()
195 { .compatible = "mediatek,mt2701-hdmi-phy",
198 { .compatible = "mediatek,mt8173-hdmi-phy",
207 .name = "mediatek-hdmi-phy",