#endif
 
 /* sb8_init.c */
-int snd_sb8dsp_pcm(struct snd_sb *chip, int device, struct snd_pcm ** rpcm);
+int snd_sb8dsp_pcm(struct snd_sb *chip, int device);
 /* sb8.c */
 irqreturn_t snd_sb8dsp_interrupt(struct snd_sb *chip);
 int snd_sb8_playback_open(struct snd_pcm_substream *substream);
 int snd_sb8_capture_close(struct snd_pcm_substream *substream);
 /* midi8.c */
 irqreturn_t snd_sb8dsp_midi_interrupt(struct snd_sb *chip);
-int snd_sb8dsp_midi(struct snd_sb *chip, int device, struct snd_rawmidi ** rrawmidi);
+int snd_sb8dsp_midi(struct snd_sb *chip, int device);
 
 /* sb16_init.c */
 int snd_sb16dsp_pcm(struct snd_sb *chip, int device, struct snd_pcm ** rpcm);
 
                "Media Vision Jazz16 at 0x%lx, irq %d, dma8 %d, dma16 %d",
                port[dev], xirq, xdma8, xdma16);
 
-       err = snd_sb8dsp_pcm(chip, 0, NULL);
+       err = snd_sb8dsp_pcm(chip, 0);
        if (err < 0)
                goto err_free;
        err = snd_sbmixer_new(chip);
 
                goto _err;
        }
 
-       if ((err = snd_sb8dsp_pcm(chip, 0, NULL)) < 0)
+       if ((err = snd_sb8dsp_pcm(chip, 0)) < 0)
                goto _err;
 
        if ((err = snd_sbmixer_new(chip)) < 0)
                        goto _err;
        }
 
-       if ((err = snd_sb8dsp_midi(chip, 0, NULL)) < 0)
+       if ((err = snd_sb8dsp_midi(chip, 0)) < 0)
                goto _err;
 
        strcpy(card->driver, chip->hardware == SB_HW_PRO ? "SB Pro" : "SB8");
 
        .pointer =              snd_sb8_capture_pointer,
 };
 
-int snd_sb8dsp_pcm(struct snd_sb *chip, int device, struct snd_pcm ** rpcm)
+int snd_sb8dsp_pcm(struct snd_sb *chip, int device)
 {
        struct snd_card *card = chip->card;
        struct snd_pcm *pcm;
        int err;
        size_t max_prealloc = 64 * 1024;
 
-       if (rpcm)
-               *rpcm = NULL;
        if ((err = snd_pcm_new(card, "SB8 DSP", device, 1, 1, &pcm)) < 0)
                return err;
        sprintf(pcm->name, "DSP v%i.%i", chip->version >> 8, chip->version & 0xff);
                                              snd_dma_isa_data(),
                                              64*1024, max_prealloc);
 
-       if (rpcm)
-               *rpcm = pcm;
        return 0;
 }
 
 
        .trigger =      snd_sb8dsp_midi_input_trigger,
 };
 
-int snd_sb8dsp_midi(struct snd_sb *chip, int device, struct snd_rawmidi ** rrawmidi)
+int snd_sb8dsp_midi(struct snd_sb *chip, int device)
 {
        struct snd_rawmidi *rmidi;
        int err;
 
-       if (rrawmidi)
-               *rrawmidi = NULL;
        if ((err = snd_rawmidi_new(chip->card, "SB8 MIDI", device, 1, 1, &rmidi)) < 0)
                return err;
        strcpy(rmidi->name, "SB8 MIDI");
                rmidi->info_flags |= SNDRV_RAWMIDI_INFO_DUPLEX;
        rmidi->private_data = chip;
        chip->rmidi = rmidi;
-       if (rrawmidi)
-               *rrawmidi = rmidi;
        return 0;
 }