Lines Matching refs:zx_spdif
84 struct zx_spdif_info *zx_spdif = dev_get_drvdata(dai->dev);
86 snd_soc_dai_set_drvdata(dai, zx_spdif);
87 zx_spdif->dma_data.addr = zx_spdif->mapbase + ZX_DATA;
88 zx_spdif->dma_data.maxburst = 8;
89 snd_soc_dai_init_dma_data(dai, &zx_spdif->dma_data, NULL);
139 struct zx_spdif_info *zx_spdif = dev_get_drvdata(socdai->dev);
148 val = readl_relaxed(zx_spdif->reg_base + ZX_CTRL);
176 writel_relaxed(val, zx_spdif->reg_base + ZX_CTRL);
178 val = readl_relaxed(zx_spdif->reg_base + ZX_VALID_BIT);
184 writel_relaxed(val, zx_spdif->reg_base + ZX_VALID_BIT);
187 ret = zx_spdif_chanstats(zx_spdif->reg_base, rate);
213 struct zx_spdif_info *zx_spdif = dev_get_drvdata(dai->dev);
218 val = readl_relaxed(zx_spdif->reg_base + ZX_FIFOCTRL);
220 writel_relaxed(val, zx_spdif->reg_base + ZX_FIFOCTRL);
224 zx_spdif_cfg_tx(zx_spdif->reg_base, true);
230 zx_spdif_cfg_tx(zx_spdif->reg_base, false);
244 struct zx_spdif_info *zx_spdif = dev_get_drvdata(dai->dev);
246 return clk_prepare_enable(zx_spdif->dai_clk);
252 struct zx_spdif_info *zx_spdif = dev_get_drvdata(dai->dev);
254 clk_disable_unprepare(zx_spdif->dai_clk);
308 struct zx_spdif_info *zx_spdif;
311 zx_spdif = devm_kzalloc(&pdev->dev, sizeof(*zx_spdif), GFP_KERNEL);
312 if (!zx_spdif)
315 zx_spdif->dai_clk = devm_clk_get(&pdev->dev, "tx");
316 if (IS_ERR(zx_spdif->dai_clk)) {
318 return PTR_ERR(zx_spdif->dai_clk);
322 zx_spdif->mapbase = res->start;
323 zx_spdif->reg_base = devm_ioremap_resource(&pdev->dev, res);
324 if (IS_ERR(zx_spdif->reg_base)) {
325 return PTR_ERR(zx_spdif->reg_base);
328 zx_spdif_dev_init(zx_spdif->reg_base);
329 platform_set_drvdata(pdev, zx_spdif);