Merge branch 'x86/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip...
[pandora-kernel.git] / sound / soc / at91 / at91-pcm.c
index e88b12e..d47492b 100644 (file)
@@ -21,8 +21,8 @@
 #include <linux/platform_device.h>
 #include <linux/slab.h>
 #include <linux/dma-mapping.h>
+#include <linux/atmel_pdc.h>
 
-#include <sound/driver.h>
 #include <sound/core.h>
 #include <sound/pcm.h>
 #include <sound/pcm_params.h>
@@ -30,7 +30,6 @@
 
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_ssc.h>
-#include <asm/arch/at91_pdc.h>
 
 #include "at91-pcm.h"
 
@@ -83,7 +82,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 +93,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) {
@@ -104,7 +103,8 @@ static void at91_pcm_dma_irq(u32 ssc_sr,
                if (prtd->period_ptr >= prtd->dma_buffer_end) {
                        prtd->period_ptr = prtd->dma_buffer;
                }
-               at91_ssc_write(params->ssc_base + params->pdc->xnpr, prtd->period_ptr);
+               at91_ssc_write(params->ssc_base + params->pdc->xnpr,
+                              prtd->period_ptr);
                at91_ssc_write(params->ssc_base + params->pdc->xncr,
                                prtd->period_size / params->pdc_xfer_size);
        }
@@ -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,21 +192,23 @@ 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));
+               DBG("sr=%lx imr=%lx\n",
+                   at91_ssc_read(params->ssc_base + AT91_SSC_SR),
+                   at91_ssc_read(params->ssc_base + AT91_SSC_IMR));
                break;
 
        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:
@@ -316,7 +318,7 @@ static int at91_pcm_preallocate_dma_buffer(struct snd_pcm *pcm,
 static u64 at91_pcm_dmamask = 0xffffffff;
 
 static int at91_pcm_new(struct snd_card *card,
-       struct snd_soc_codec_dai *dai, struct snd_pcm *pcm)
+       struct snd_soc_dai *dai, struct snd_pcm *pcm)
 {
        int ret = 0;
 
@@ -365,7 +367,7 @@ static void at91_pcm_free_dma_buffers(struct snd_pcm *pcm)
 
 #ifdef CONFIG_PM
 static int at91_pcm_suspend(struct platform_device *pdev,
-       struct snd_soc_cpu_dai *dai)
+       struct snd_soc_dai *dai)
 {
        struct snd_pcm_runtime *runtime = dai->runtime;
        struct at91_runtime_data *prtd;
@@ -379,7 +381,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);
@@ -390,7 +392,7 @@ static int at91_pcm_suspend(struct platform_device *pdev,
 }
 
 static int at91_pcm_resume(struct platform_device *pdev,
-       struct snd_soc_cpu_dai *dai)
+       struct snd_soc_dai *dai)
 {
        struct snd_pcm_runtime *runtime = dai->runtime;
        struct at91_runtime_data *prtd;
@@ -408,7 +410,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