.pointer =      snd_es18xx_capture_pointer,
 };
 
-static int snd_es18xx_pcm(struct snd_card *card, int device,
-                         struct snd_pcm **rpcm)
+static int snd_es18xx_pcm(struct snd_card *card, int device)
 {
        struct snd_es18xx *chip = card->private_data;
         struct snd_pcm *pcm;
        char str[16];
        int err;
 
-       if (rpcm)
-               *rpcm = NULL;
        sprintf(str, "ES%x", chip->version);
        if (chip->caps & ES18XX_PCM2)
                err = snd_pcm_new(card, str, device, 2, 1, &pcm);
                                              snd_dma_isa_data(),
                                              64*1024,
                                              chip->dma1 > 3 || chip->dma2 > 3 ? 128*1024 : 64*1024);
-
-        if (rpcm)
-               *rpcm = pcm;
        return 0;
 }
 
                        chip->port,
                        irq[dev], dma1[dev]);
 
-       err = snd_es18xx_pcm(card, 0, NULL);
+       err = snd_es18xx_pcm(card, 0);
        if (err < 0)
                return err;