Lines Matching refs:wd
297 struct au1xpsc_audio_data *wd;
299 wd = devm_kzalloc(&pdev->dev, sizeof(struct au1xpsc_audio_data),
301 if (!wd)
304 wd->mmio = devm_platform_ioremap_resource(pdev, 0);
305 if (IS_ERR(wd->mmio))
306 return PTR_ERR(wd->mmio);
311 wd->dmaids[SNDRV_PCM_STREAM_PLAYBACK] = dmares->start;
316 wd->dmaids[SNDRV_PCM_STREAM_CAPTURE] = dmares->start;
321 sel = __raw_readl(PSC_SEL(wd)) & PSC_SEL_CLK_MASK;
322 __raw_writel(PSC_CTRL_DISABLE, PSC_CTRL(wd));
324 __raw_writel(PSC_SEL_PS_I2SMODE | sel, PSC_SEL(wd));
325 __raw_writel(0, I2S_CFG(wd));
329 wd->cfg |= PSC_I2SCFG_RT_FIFO8 | PSC_I2SCFG_TT_FIFO8;
337 memcpy(&wd->dai_drv, &au1xpsc_i2s_dai_template,
339 wd->dai_drv.name = dev_name(&pdev->dev);
341 platform_set_drvdata(pdev, wd);
344 &au1xpsc_i2s_component, &wd->dai_drv, 1);
349 struct au1xpsc_audio_data *wd = platform_get_drvdata(pdev);
351 __raw_writel(0, I2S_CFG(wd));
353 __raw_writel(PSC_CTRL_DISABLE, PSC_CTRL(wd));
360 struct au1xpsc_audio_data *wd = dev_get_drvdata(dev);
363 wd->pm[0] = __raw_readl(PSC_SEL(wd));
365 __raw_writel(0, I2S_CFG(wd));
367 __raw_writel(PSC_CTRL_DISABLE, PSC_CTRL(wd));
375 struct au1xpsc_audio_data *wd = dev_get_drvdata(dev);
378 __raw_writel(PSC_CTRL_DISABLE, PSC_CTRL(wd));
380 __raw_writel(0, PSC_SEL(wd));
382 __raw_writel(wd->pm[0], PSC_SEL(wd));