Lines Matching defs:prl

46 	struct img_prl_out *prl = dev_get_drvdata(dev);
48 clk_disable_unprepare(prl->clk_ref);
55 struct img_prl_out *prl = dev_get_drvdata(dev);
58 ret = clk_prepare_enable(prl->clk_ref);
67 static inline void img_prl_out_writel(struct img_prl_out *prl,
70 writel(val, prl->base + reg);
73 static inline u32 img_prl_out_readl(struct img_prl_out *prl, u32 reg)
75 return readl(prl->base + reg);
78 static void img_prl_out_reset(struct img_prl_out *prl)
82 ctl = img_prl_out_readl(prl, IMG_PRL_OUT_CTL) &
85 reset_control_assert(prl->rst);
86 reset_control_deassert(prl->rst);
88 img_prl_out_writel(prl, ctl, IMG_PRL_OUT_CTL);
94 struct img_prl_out *prl = snd_soc_dai_get_drvdata(dai);
101 reg = img_prl_out_readl(prl, IMG_PRL_OUT_CTL);
103 img_prl_out_writel(prl, reg, IMG_PRL_OUT_CTL);
108 img_prl_out_reset(prl);
120 struct img_prl_out *prl = snd_soc_dai_get_drvdata(dai);
140 clk_set_rate(prl->clk_ref, rate * 256);
142 reg = img_prl_out_readl(prl, IMG_PRL_OUT_CTL);
144 img_prl_out_writel(prl, reg, IMG_PRL_OUT_CTL);
151 struct img_prl_out *prl = snd_soc_dai_get_drvdata(dai);
165 ret = pm_runtime_resume_and_get(prl->dev);
169 reg = img_prl_out_readl(prl, IMG_PRL_OUT_CTL);
171 img_prl_out_writel(prl, reg, IMG_PRL_OUT_CTL);
172 pm_runtime_put(prl->dev);
179 struct img_prl_out *prl = snd_soc_dai_get_drvdata(dai);
181 snd_soc_dai_init_dma_data(dai, &prl->dma_data, NULL);
204 .name = "img-prl-out",
210 struct img_prl_out *prl;
216 prl = devm_kzalloc(&pdev->dev, sizeof(*prl), GFP_KERNEL);
217 if (!prl)
220 platform_set_drvdata(pdev, prl);
222 prl->dev = &pdev->dev;
228 prl->base = base;
230 prl->rst = devm_reset_control_get_exclusive(&pdev->dev, "rst");
231 if (IS_ERR(prl->rst))
232 return dev_err_probe(&pdev->dev, PTR_ERR(prl->rst),
235 prl->clk_sys = devm_clk_get(&pdev->dev, "sys");
236 if (IS_ERR(prl->clk_sys))
237 return dev_err_probe(dev, PTR_ERR(prl->clk_sys),
240 prl->clk_ref = devm_clk_get(&pdev->dev, "ref");
241 if (IS_ERR(prl->clk_ref))
242 return dev_err_probe(dev, PTR_ERR(prl->clk_ref),
245 ret = clk_prepare_enable(prl->clk_sys);
249 img_prl_out_writel(prl, IMG_PRL_OUT_CTL_EDGE_MASK, IMG_PRL_OUT_CTL);
250 img_prl_out_reset(prl);
259 prl->dma_data.addr = res->start + IMG_PRL_OUT_TX_FIFO;
260 prl->dma_data.addr_width = 4;
261 prl->dma_data.maxburst = 4;
280 clk_disable_unprepare(prl->clk_sys);
287 struct img_prl_out *prl = platform_get_drvdata(pdev);
293 clk_disable_unprepare(prl->clk_sys);