|
@@ -68,61 +68,39 @@ static struct snd_ac97_bus_ops pxa2xx_ac97_ops = {
|
|
.reset = pxa2xx_ac97_cold_reset,
|
|
.reset = pxa2xx_ac97_cold_reset,
|
|
};
|
|
};
|
|
|
|
|
|
-static struct pxad_param pxa2xx_ac97_pcm_stereo_in_req = {
|
|
|
|
- .prio = PXAD_PRIO_LOWEST,
|
|
|
|
- .drcmr = 11,
|
|
|
|
-};
|
|
|
|
-
|
|
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_stereo_in = {
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_stereo_in = {
|
|
.addr = __PREG(PCDR),
|
|
.addr = __PREG(PCDR),
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES,
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES,
|
|
|
|
+ .chan_name = "pcm_pcm_stereo_in",
|
|
.maxburst = 32,
|
|
.maxburst = 32,
|
|
- .filter_data = &pxa2xx_ac97_pcm_stereo_in_req,
|
|
|
|
-};
|
|
|
|
-
|
|
|
|
-static struct pxad_param pxa2xx_ac97_pcm_stereo_out_req = {
|
|
|
|
- .prio = PXAD_PRIO_LOWEST,
|
|
|
|
- .drcmr = 12,
|
|
|
|
};
|
|
};
|
|
|
|
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_stereo_out = {
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_stereo_out = {
|
|
.addr = __PREG(PCDR),
|
|
.addr = __PREG(PCDR),
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES,
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES,
|
|
|
|
+ .chan_name = "pcm_pcm_stereo_out",
|
|
.maxburst = 32,
|
|
.maxburst = 32,
|
|
- .filter_data = &pxa2xx_ac97_pcm_stereo_out_req,
|
|
|
|
};
|
|
};
|
|
|
|
|
|
-static struct pxad_param pxa2xx_ac97_pcm_aux_mono_out_req = {
|
|
|
|
- .prio = PXAD_PRIO_LOWEST,
|
|
|
|
- .drcmr = 10,
|
|
|
|
-};
|
|
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_aux_mono_out = {
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_aux_mono_out = {
|
|
.addr = __PREG(MODR),
|
|
.addr = __PREG(MODR),
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_2_BYTES,
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_2_BYTES,
|
|
|
|
+ .chan_name = "pcm_aux_mono_out",
|
|
.maxburst = 16,
|
|
.maxburst = 16,
|
|
- .filter_data = &pxa2xx_ac97_pcm_aux_mono_out_req,
|
|
|
|
};
|
|
};
|
|
|
|
|
|
-static struct pxad_param pxa2xx_ac97_pcm_aux_mono_in_req = {
|
|
|
|
- .prio = PXAD_PRIO_LOWEST,
|
|
|
|
- .drcmr = 9,
|
|
|
|
-};
|
|
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_aux_mono_in = {
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_aux_mono_in = {
|
|
.addr = __PREG(MODR),
|
|
.addr = __PREG(MODR),
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_2_BYTES,
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_2_BYTES,
|
|
|
|
+ .chan_name = "pcm_aux_mono_in",
|
|
.maxburst = 16,
|
|
.maxburst = 16,
|
|
- .filter_data = &pxa2xx_ac97_pcm_aux_mono_in_req,
|
|
|
|
};
|
|
};
|
|
|
|
|
|
-static struct pxad_param pxa2xx_ac97_pcm_aux_mic_mono_req = {
|
|
|
|
- .prio = PXAD_PRIO_LOWEST,
|
|
|
|
- .drcmr = 8,
|
|
|
|
-};
|
|
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_mic_mono_in = {
|
|
static struct snd_dmaengine_dai_dma_data pxa2xx_ac97_pcm_mic_mono_in = {
|
|
.addr = __PREG(MCDR),
|
|
.addr = __PREG(MCDR),
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_2_BYTES,
|
|
.addr_width = DMA_SLAVE_BUSWIDTH_2_BYTES,
|
|
|
|
+ .chan_name = "pcm_aux_mic_mono",
|
|
.maxburst = 16,
|
|
.maxburst = 16,
|
|
- .filter_data = &pxa2xx_ac97_pcm_aux_mic_mono_req,
|
|
|
|
};
|
|
};
|
|
|
|
|
|
static int pxa2xx_ac97_hifi_startup(struct snd_pcm_substream *substream,
|
|
static int pxa2xx_ac97_hifi_startup(struct snd_pcm_substream *substream,
|