Merge branch 'for-linus' into for-next
[platform/kernel/linux-rpi.git] / sound / pci / als300.c
index cfbb8ca..8d2471e 100644 (file)
@@ -294,7 +294,7 @@ static int snd_als300_ac97(struct snd_als300 *chip)
        struct snd_ac97_bus *bus;
        struct snd_ac97_template ac97;
        int err;
-       static struct snd_ac97_bus_ops ops = {
+       static const struct snd_ac97_bus_ops ops = {
                .write = snd_als300_ac97_write,
                .read = snd_als300_ac97_read,
        };
@@ -378,7 +378,6 @@ static int snd_als300_playback_close(struct snd_pcm_substream *substream)
        data = substream->runtime->private_data;
        kfree(data);
        chip->playback_substream = NULL;
-       snd_pcm_lib_free_pages(substream);
        return 0;
 }
 
@@ -407,22 +406,9 @@ static int snd_als300_capture_close(struct snd_pcm_substream *substream)
        data = substream->runtime->private_data;
        kfree(data);
        chip->capture_substream = NULL;
-       snd_pcm_lib_free_pages(substream);
        return 0;
 }
 
-static int snd_als300_pcm_hw_params(struct snd_pcm_substream *substream,
-                                   struct snd_pcm_hw_params *hw_params)
-{
-       return snd_pcm_lib_malloc_pages(substream,
-                                       params_buffer_bytes(hw_params));
-}
-
-static int snd_als300_pcm_hw_free(struct snd_pcm_substream *substream)
-{
-       return snd_pcm_lib_free_pages(substream);
-}
-
 static int snd_als300_playback_prepare(struct snd_pcm_substream *substream)
 {
        u32 tmp;
@@ -553,9 +539,6 @@ static snd_pcm_uframes_t snd_als300_pointer(struct snd_pcm_substream *substream)
 static const struct snd_pcm_ops snd_als300_playback_ops = {
        .open =         snd_als300_playback_open,
        .close =        snd_als300_playback_close,
-       .ioctl =        snd_pcm_lib_ioctl,
-       .hw_params =    snd_als300_pcm_hw_params,
-       .hw_free =      snd_als300_pcm_hw_free,
        .prepare =      snd_als300_playback_prepare,
        .trigger =      snd_als300_trigger,
        .pointer =      snd_als300_pointer,
@@ -564,9 +547,6 @@ static const struct snd_pcm_ops snd_als300_playback_ops = {
 static const struct snd_pcm_ops snd_als300_capture_ops = {
        .open =         snd_als300_capture_open,
        .close =        snd_als300_capture_close,
-       .ioctl =        snd_pcm_lib_ioctl,
-       .hw_params =    snd_als300_pcm_hw_params,
-       .hw_free =      snd_als300_pcm_hw_free,
        .prepare =      snd_als300_capture_prepare,
        .trigger =      snd_als300_trigger,
        .pointer =      snd_als300_pointer,
@@ -591,9 +571,8 @@ static int snd_als300_new_pcm(struct snd_als300 *chip)
                                &snd_als300_capture_ops);
 
        /* pre-allocation of buffers */
-       snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV,
-                                             &chip->pci->dev,
-                                             64*1024, 64*1024);
+       snd_pcm_set_managed_buffer_all(pcm, SNDRV_DMA_TYPE_DEV, &chip->pci->dev,
+                                      64*1024, 64*1024);
        return 0;
 }
 
@@ -638,7 +617,7 @@ static int snd_als300_create(struct snd_card *card,
        void *irq_handler;
        int err;
 
-       static struct snd_device_ops ops = {
+       static const struct snd_device_ops ops = {
                .dev_free = snd_als300_dev_free,
        };
        *rchip = NULL;
@@ -685,7 +664,7 @@ static int snd_als300_create(struct snd_card *card,
                return -EBUSY;
        }
        chip->irq = pci->irq;
-
+       card->sync_irq = chip->irq;
 
        snd_als300_init(chip);