• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/sound/soc/au1x/

Lines Matching refs:pscdata

63 	struct au1xpsc_audio_data *pscdata = au1xpsc_i2s_workdata;
69 ct = pscdata->cfg;
113 pscdata->cfg = ct;
123 struct au1xpsc_audio_data *pscdata = au1xpsc_i2s_workdata;
129 stat = au_readl(I2S_STAT(pscdata));
132 cfgbits = au_readl(I2S_CFG(pscdata));
134 (params_rate(params) != pscdata->rate))
138 pscdata->cfg &= ~(0x1f << 4);
139 pscdata->cfg |= PSC_I2SCFG_SET_LEN(params->msbits);
141 pscdata->rate = params_rate(params);
153 static int au1xpsc_i2s_configure(struct au1xpsc_audio_data *pscdata)
158 au_writel(PSC_CTRL_ENABLE, PSC_CTRL(pscdata));
162 while (!(au_readl(I2S_STAT(pscdata)) & PSC_I2SSTAT_SR) && tmo)
168 au_writel(0, I2S_CFG(pscdata));
170 au_writel(pscdata->cfg | PSC_I2SCFG_DE_ENABLE, I2S_CFG(pscdata));
175 while (!(au_readl(I2S_STAT(pscdata)) & PSC_I2SSTAT_DR) && tmo)
182 au_writel(0, I2S_CFG(pscdata));
183 au_writel(PSC_CTRL_SUSPEND, PSC_CTRL(pscdata));
188 static int au1xpsc_i2s_start(struct au1xpsc_audio_data *pscdata, int stype)
196 stat = au_readl(I2S_STAT(pscdata));
198 ret = au1xpsc_i2s_configure(pscdata);
203 au_writel(I2SPCR_CLRFIFO(stype), I2S_PCR(pscdata));
205 au_writel(I2SPCR_START(stype), I2S_PCR(pscdata));
210 while (!(au_readl(I2S_STAT(pscdata)) & I2SSTAT_BUSY(stype)) && tmo)
214 au_writel(I2SPCR_STOP(stype), I2S_PCR(pscdata));
222 static int au1xpsc_i2s_stop(struct au1xpsc_audio_data *pscdata, int stype)
226 au_writel(I2SPCR_STOP(stype), I2S_PCR(pscdata));
231 while ((au_readl(I2S_STAT(pscdata)) & I2SSTAT_BUSY(stype)) && tmo)
235 stat = au_readl(I2S_STAT(pscdata));
237 au_writel(0, I2S_CFG(pscdata));
239 au_writel(PSC_CTRL_SUSPEND, PSC_CTRL(pscdata));
248 struct au1xpsc_audio_data *pscdata = au1xpsc_i2s_workdata;
254 ret = au1xpsc_i2s_start(pscdata, stype);
258 ret = au1xpsc_i2s_stop(pscdata, stype);