From fa8f878701888666c124e21d77bf7f3ba2dd2359 Mon Sep 17 00:00:00 2001 From: Frank Mandarino Date: Mon, 12 Feb 2007 14:06:22 +0100 Subject: [PATCH] [ALSA] Change AT91 PDC register defines for 2.6.20 kernel Use the new PDC register name defines that were updated in Linux 2.6.20. Signed-off-by: Frank Mandarino Signed-off-by: Liam Girdwood Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela --- sound/soc/at91/at91-i2s.c | 43 ++++++++++++++++++++------------------- sound/soc/at91/at91-pcm.c | 20 +++++++++--------- 2 files changed, 32 insertions(+), 31 deletions(-) diff --git a/sound/soc/at91/at91-i2s.c b/sound/soc/at91/at91-i2s.c index fcc544a96b..9fc0c03888 100644 --- a/sound/soc/at91/at91-i2s.c +++ b/sound/soc/at91/at91-i2s.c @@ -20,6 +20,8 @@ #include #include #include +#include + #include #include #include @@ -29,7 +31,6 @@ #include #include #include -#include #include "at91-pcm.h" #include "at91-i2s.h" @@ -51,17 +52,17 @@ * SSC PDC registers required by the PCM DMA engine. */ static struct at91_pdc_regs pdc_tx_reg = { - .xpr = AT91_PDC_TPR, - .xcr = AT91_PDC_TCR, - .xnpr = AT91_PDC_TNPR, - .xncr = AT91_PDC_TNCR, + .xpr = ATMEL_PDC_TPR, + .xcr = ATMEL_PDC_TCR, + .xnpr = ATMEL_PDC_TNPR, + .xncr = ATMEL_PDC_TNCR, }; static struct at91_pdc_regs pdc_rx_reg = { - .xpr = AT91_PDC_RPR, - .xcr = AT91_PDC_RCR, - .xnpr = AT91_PDC_RNPR, - .xncr = AT91_PDC_RNCR, + .xpr = ATMEL_PDC_RPR, + .xcr = ATMEL_PDC_RCR, + .xnpr = ATMEL_PDC_RNPR, + .xncr = ATMEL_PDC_RNCR, }; /* @@ -72,8 +73,8 @@ static struct at91_ssc_mask ssc_tx_mask = { .ssc_disable = AT91_SSC_TXDIS, .ssc_endx = AT91_SSC_ENDTX, .ssc_endbuf = AT91_SSC_TXBUFE, - .pdc_enable = AT91_PDC_TXTEN, - .pdc_disable = AT91_PDC_TXTDIS, + .pdc_enable = ATMEL_PDC_TXTEN, + .pdc_disable = ATMEL_PDC_TXTDIS, }; static struct at91_ssc_mask ssc_rx_mask = { @@ -81,8 +82,8 @@ static struct at91_ssc_mask ssc_rx_mask = { .ssc_disable = AT91_SSC_RXDIS, .ssc_endx = AT91_SSC_ENDRX, .ssc_endbuf = AT91_SSC_RXBUFF, - .pdc_enable = AT91_PDC_RXTEN, - .pdc_disable = AT91_PDC_RXTDIS, + .pdc_enable = ATMEL_PDC_RXTEN, + .pdc_disable = ATMEL_PDC_RXTDIS, }; @@ -508,14 +509,14 @@ static int at91_i2s_hw_params(struct snd_pcm_substream *substream, /* Reset the SSC and its PDC registers */ at91_ssc_write(ssc_p->ssc.base + AT91_SSC_CR, AT91_SSC_SWRST); - at91_ssc_write(ssc_p->ssc.base + AT91_PDC_RPR, 0); - at91_ssc_write(ssc_p->ssc.base + AT91_PDC_RCR, 0); - at91_ssc_write(ssc_p->ssc.base + AT91_PDC_RNPR, 0); - at91_ssc_write(ssc_p->ssc.base + AT91_PDC_RNCR, 0); - at91_ssc_write(ssc_p->ssc.base + AT91_PDC_TPR, 0); - at91_ssc_write(ssc_p->ssc.base + AT91_PDC_TCR, 0); - at91_ssc_write(ssc_p->ssc.base + AT91_PDC_TNPR, 0); - at91_ssc_write(ssc_p->ssc.base + AT91_PDC_TNCR, 0); + at91_ssc_write(ssc_p->ssc.base + ATMEL_PDC_RPR, 0); + at91_ssc_write(ssc_p->ssc.base + ATMEL_PDC_RCR, 0); + at91_ssc_write(ssc_p->ssc.base + ATMEL_PDC_RNPR, 0); + at91_ssc_write(ssc_p->ssc.base + ATMEL_PDC_RNCR, 0); + at91_ssc_write(ssc_p->ssc.base + ATMEL_PDC_TPR, 0); + at91_ssc_write(ssc_p->ssc.base + ATMEL_PDC_TCR, 0); + at91_ssc_write(ssc_p->ssc.base + ATMEL_PDC_TNPR, 0); + at91_ssc_write(ssc_p->ssc.base + ATMEL_PDC_TNCR, 0); if ((ret = request_irq(ssc_p->ssc.pid, at91_i2s_interrupt, 0, ssc_p->name, ssc_p)) < 0) { diff --git a/sound/soc/at91/at91-pcm.c b/sound/soc/at91/at91-pcm.c index e88b12e7cc..b39b95a470 100644 --- a/sound/soc/at91/at91-pcm.c +++ b/sound/soc/at91/at91-pcm.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -30,7 +31,6 @@ #include #include -#include #include "at91-pcm.h" @@ -83,7 +83,7 @@ static void at91_pcm_dma_irq(u32 ssc_sr, params->name, ssc_sr, count); /* re-start the PDC */ - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_disable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_disable); prtd->period_ptr += prtd->period_size; if (prtd->period_ptr >= prtd->dma_buffer_end) { @@ -94,7 +94,7 @@ static void at91_pcm_dma_irq(u32 ssc_sr, at91_ssc_write(params->ssc_base + params->pdc->xcr, prtd->period_size / params->pdc_xfer_size); - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_enable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_enable); } if (ssc_sr & params->mask->ssc_endx) { @@ -143,7 +143,7 @@ static int at91_pcm_hw_free(struct snd_pcm_substream *substream) struct at91_pcm_dma_params *params = prtd->params; if (params != NULL) { - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_disable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_disable); prtd->params->dma_intr_handler = NULL; } @@ -158,7 +158,7 @@ static int at91_pcm_prepare(struct snd_pcm_substream *substream) at91_ssc_write(params->ssc_base + AT91_SSC_IDR, params->mask->ssc_endx | params->mask->ssc_endbuf); - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_disable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_disable); return 0; } @@ -192,7 +192,7 @@ static int at91_pcm_trigger(struct snd_pcm_substream *substream, at91_ssc_write(params->ssc_base + AT91_SSC_IER, params->mask->ssc_endx | params->mask->ssc_endbuf); - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_enable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_enable); DBG("sr=%lx imr=%lx\n", at91_ssc_read(params->ssc_base + AT91_SSC_SR), at91_ssc_read(params->ssc_base + AT91_SSC_IER)); @@ -201,12 +201,12 @@ static int at91_pcm_trigger(struct snd_pcm_substream *substream, case SNDRV_PCM_TRIGGER_STOP: case SNDRV_PCM_TRIGGER_SUSPEND: case SNDRV_PCM_TRIGGER_PAUSE_PUSH: - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_disable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_disable); break; case SNDRV_PCM_TRIGGER_RESUME: case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_enable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_enable); break; default: @@ -379,7 +379,7 @@ static int at91_pcm_suspend(struct platform_device *pdev, /* disable the PDC and save the PDC registers */ - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_disable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_disable); prtd->pdc_xpr_save = at91_ssc_read(params->ssc_base + params->pdc->xpr); prtd->pdc_xcr_save = at91_ssc_read(params->ssc_base + params->pdc->xcr); @@ -408,7 +408,7 @@ static int at91_pcm_resume(struct platform_device *pdev, at91_ssc_write(params->ssc_base + params->pdc->xnpr, prtd->pdc_xnpr_save); at91_ssc_write(params->ssc_base + params->pdc->xncr, prtd->pdc_xncr_save); - at91_ssc_write(params->ssc_base + AT91_PDC_PTCR, params->mask->pdc_enable); + at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_enable); return 0; } #else -- 2.39.5