aboutsummaryrefslogtreecommitdiffstats
path: root/sound/isa
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2015-01-02 06:24:43 -0500
committerTakashi Iwai <tiwai@suse.de>2015-01-02 10:30:08 -0500
commitfa60c065694a81e534c61809ab7dd419366e9335 (patch)
treecf48dbdcbfdc171ebad6e34be90d436e676c4e13 /sound/isa
parent92533f188862fbefe357ada4e4af67b8e730e680 (diff)
ALSA: wss: Remove (almost) always NULL parameters
Most callers of snd_wss_pcm(), snd_wss_timer() and snd_cs4236_pcm() pass NULL as the last parameter, some callers pass a pointer but never use it after the function has been called and only a few callers pass a pointer and actually use it. The later is only the case for snd_wss_pcm() for snd_cs4236_pcm() and it is possible to get the same PCM object by accessing the pcm field of the snd_wss struct that was passed as the first parameter. This function removes the last parameters from the functions mentioned above and updates the callers which used it to use chip->pcm instead. This allows us to slightly simplify the functions since they don't have to check and set the last parameter anymore which makes the code slightly shorter and cleaner. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/isa')
-rw-r--r--sound/isa/ad1848/ad1848.c7
-rw-r--r--sound/isa/azt2320.c4
-rw-r--r--sound/isa/cmi8328.c4
-rw-r--r--sound/isa/cs423x/cs4231.c9
-rw-r--r--sound/isa/cs423x/cs4236.c13
-rw-r--r--sound/isa/cs423x/cs4236_lib.c9
-rw-r--r--sound/isa/galaxy/galaxy.c4
-rw-r--r--sound/isa/gus/gusmax.c4
-rw-r--r--sound/isa/gus/interwave.c10
-rw-r--r--sound/isa/opl3sa2.c4
-rw-r--r--sound/isa/opti9xx/miro.c12
-rw-r--r--sound/isa/opti9xx/opti92x-ad1848.c13
-rw-r--r--sound/isa/sc6000.c2
-rw-r--r--sound/isa/sscape.c5
-rw-r--r--sound/isa/wavefront/wavefront.c4
-rw-r--r--sound/isa/wss/wss_lib.c8
16 files changed, 48 insertions, 64 deletions
diff --git a/sound/isa/ad1848/ad1848.c b/sound/isa/ad1848/ad1848.c
index 093f22a464d7..f159da4ec890 100644
--- a/sound/isa/ad1848/ad1848.c
+++ b/sound/isa/ad1848/ad1848.c
@@ -88,7 +88,6 @@ static int snd_ad1848_probe(struct device *dev, unsigned int n)
88{ 88{
89 struct snd_card *card; 89 struct snd_card *card;
90 struct snd_wss *chip; 90 struct snd_wss *chip;
91 struct snd_pcm *pcm;
92 int error; 91 int error;
93 92
94 error = snd_card_new(dev, index[n], id[n], THIS_MODULE, 0, &card); 93 error = snd_card_new(dev, index[n], id[n], THIS_MODULE, 0, &card);
@@ -103,7 +102,7 @@ static int snd_ad1848_probe(struct device *dev, unsigned int n)
103 102
104 card->private_data = chip; 103 card->private_data = chip;
105 104
106 error = snd_wss_pcm(chip, 0, &pcm); 105 error = snd_wss_pcm(chip, 0);
107 if (error < 0) 106 if (error < 0)
108 goto out; 107 goto out;
109 108
@@ -112,10 +111,10 @@ static int snd_ad1848_probe(struct device *dev, unsigned int n)
112 goto out; 111 goto out;
113 112
114 strcpy(card->driver, "AD1848"); 113 strcpy(card->driver, "AD1848");
115 strcpy(card->shortname, pcm->name); 114 strcpy(card->shortname, chip->pcm->name);
116 115
117 sprintf(card->longname, "%s at 0x%lx, irq %d, dma %d", 116 sprintf(card->longname, "%s at 0x%lx, irq %d, dma %d",
118 pcm->name, chip->port, irq[n], dma1[n]); 117 chip->pcm->name, chip->port, irq[n], dma1[n]);
119 if (thinkpad[n]) 118 if (thinkpad[n])
120 strcat(card->longname, " [Thinkpad]"); 119 strcat(card->longname, " [Thinkpad]");
121 120
diff --git a/sound/isa/azt2320.c b/sound/isa/azt2320.c
index 0ea75fc62072..b8e768e5ce80 100644
--- a/sound/isa/azt2320.c
+++ b/sound/isa/azt2320.c
@@ -215,7 +215,7 @@ static int snd_card_azt2320_probe(int dev,
215 sprintf(card->longname, "%s, WSS at 0x%lx, irq %i, dma %i&%i", 215 sprintf(card->longname, "%s, WSS at 0x%lx, irq %i, dma %i&%i",
216 card->shortname, chip->port, irq[dev], dma1[dev], dma2[dev]); 216 card->shortname, chip->port, irq[dev], dma1[dev], dma2[dev]);
217 217
218 error = snd_wss_pcm(chip, 0, NULL); 218 error = snd_wss_pcm(chip, 0);
219 if (error < 0) { 219 if (error < 0) {
220 snd_card_free(card); 220 snd_card_free(card);
221 return error; 221 return error;
@@ -225,7 +225,7 @@ static int snd_card_azt2320_probe(int dev,
225 snd_card_free(card); 225 snd_card_free(card);
226 return error; 226 return error;
227 } 227 }
228 error = snd_wss_timer(chip, 0, NULL); 228 error = snd_wss_timer(chip, 0);
229 if (error < 0) { 229 if (error < 0) {
230 snd_card_free(card); 230 snd_card_free(card);
231 return error; 231 return error;
diff --git a/sound/isa/cmi8328.c b/sound/isa/cmi8328.c
index 4778852a1201..2c89d95da674 100644
--- a/sound/isa/cmi8328.c
+++ b/sound/isa/cmi8328.c
@@ -307,7 +307,7 @@ static int snd_cmi8328_probe(struct device *pdev, unsigned int ndev)
307 if (err < 0) 307 if (err < 0)
308 goto error; 308 goto error;
309 309
310 err = snd_wss_pcm(cmi->wss, 0, NULL); 310 err = snd_wss_pcm(cmi->wss, 0);
311 if (err < 0) 311 if (err < 0)
312 goto error; 312 goto error;
313 313
@@ -318,7 +318,7 @@ static int snd_cmi8328_probe(struct device *pdev, unsigned int ndev)
318 if (err < 0) 318 if (err < 0)
319 goto error; 319 goto error;
320 320
321 if (snd_wss_timer(cmi->wss, 0, NULL) < 0) 321 if (snd_wss_timer(cmi->wss, 0) < 0)
322 snd_printk(KERN_WARNING "error initializing WSS timer\n"); 322 snd_printk(KERN_WARNING "error initializing WSS timer\n");
323 323
324 if (mpuport[ndev] == SNDRV_AUTO_PORT) { 324 if (mpuport[ndev] == SNDRV_AUTO_PORT) {
diff --git a/sound/isa/cs423x/cs4231.c b/sound/isa/cs423x/cs4231.c
index 7dba07a4343a..282cd75d2235 100644
--- a/sound/isa/cs423x/cs4231.c
+++ b/sound/isa/cs423x/cs4231.c
@@ -92,7 +92,6 @@ static int snd_cs4231_probe(struct device *dev, unsigned int n)
92{ 92{
93 struct snd_card *card; 93 struct snd_card *card;
94 struct snd_wss *chip; 94 struct snd_wss *chip;
95 struct snd_pcm *pcm;
96 int error; 95 int error;
97 96
98 error = snd_card_new(dev, index[n], id[n], THIS_MODULE, 0, &card); 97 error = snd_card_new(dev, index[n], id[n], THIS_MODULE, 0, &card);
@@ -106,15 +105,15 @@ static int snd_cs4231_probe(struct device *dev, unsigned int n)
106 105
107 card->private_data = chip; 106 card->private_data = chip;
108 107
109 error = snd_wss_pcm(chip, 0, &pcm); 108 error = snd_wss_pcm(chip, 0);
110 if (error < 0) 109 if (error < 0)
111 goto out; 110 goto out;
112 111
113 strcpy(card->driver, "CS4231"); 112 strcpy(card->driver, "CS4231");
114 strcpy(card->shortname, pcm->name); 113 strcpy(card->shortname, chip->pcm->name);
115 114
116 sprintf(card->longname, "%s at 0x%lx, irq %d, dma %d", 115 sprintf(card->longname, "%s at 0x%lx, irq %d, dma %d",
117 pcm->name, chip->port, irq[n], dma1[n]); 116 chip->pcm->name, chip->port, irq[n], dma1[n]);
118 if (dma2[n] >= 0) 117 if (dma2[n] >= 0)
119 sprintf(card->longname + strlen(card->longname), "&%d", dma2[n]); 118 sprintf(card->longname + strlen(card->longname), "&%d", dma2[n]);
120 119
@@ -122,7 +121,7 @@ static int snd_cs4231_probe(struct device *dev, unsigned int n)
122 if (error < 0) 121 if (error < 0)
123 goto out; 122 goto out;
124 123
125 error = snd_wss_timer(chip, 0, NULL); 124 error = snd_wss_timer(chip, 0);
126 if (error < 0) 125 if (error < 0)
127 goto out; 126 goto out;
128 127
diff --git a/sound/isa/cs423x/cs4236.c b/sound/isa/cs423x/cs4236.c
index 750f51c904fc..9d7582c90a95 100644
--- a/sound/isa/cs423x/cs4236.c
+++ b/sound/isa/cs423x/cs4236.c
@@ -382,7 +382,6 @@ static int snd_cs423x_card_new(struct device *pdev, int dev,
382static int snd_cs423x_probe(struct snd_card *card, int dev) 382static int snd_cs423x_probe(struct snd_card *card, int dev)
383{ 383{
384 struct snd_card_cs4236 *acard; 384 struct snd_card_cs4236 *acard;
385 struct snd_pcm *pcm;
386 struct snd_wss *chip; 385 struct snd_wss *chip;
387 struct snd_opl3 *opl3; 386 struct snd_opl3 *opl3;
388 int err; 387 int err;
@@ -404,7 +403,7 @@ static int snd_cs423x_probe(struct snd_card *card, int dev)
404 acard->chip = chip; 403 acard->chip = chip;
405 if (chip->hardware & WSS_HW_CS4236B_MASK) { 404 if (chip->hardware & WSS_HW_CS4236B_MASK) {
406 405
407 err = snd_cs4236_pcm(chip, 0, &pcm); 406 err = snd_cs4236_pcm(chip, 0);
408 if (err < 0) 407 if (err < 0)
409 return err; 408 return err;
410 409
@@ -412,7 +411,7 @@ static int snd_cs423x_probe(struct snd_card *card, int dev)
412 if (err < 0) 411 if (err < 0)
413 return err; 412 return err;
414 } else { 413 } else {
415 err = snd_wss_pcm(chip, 0, &pcm); 414 err = snd_wss_pcm(chip, 0);
416 if (err < 0) 415 if (err < 0)
417 return err; 416 return err;
418 417
@@ -420,17 +419,17 @@ static int snd_cs423x_probe(struct snd_card *card, int dev)
420 if (err < 0) 419 if (err < 0)
421 return err; 420 return err;
422 } 421 }
423 strcpy(card->driver, pcm->name); 422 strcpy(card->driver, chip->pcm->name);
424 strcpy(card->shortname, pcm->name); 423 strcpy(card->shortname, chip->pcm->name);
425 sprintf(card->longname, "%s at 0x%lx, irq %i, dma %i", 424 sprintf(card->longname, "%s at 0x%lx, irq %i, dma %i",
426 pcm->name, 425 chip->pcm->name,
427 chip->port, 426 chip->port,
428 irq[dev], 427 irq[dev],
429 dma1[dev]); 428 dma1[dev]);
430 if (dma2[dev] >= 0) 429 if (dma2[dev] >= 0)
431 sprintf(card->longname + strlen(card->longname), "&%d", dma2[dev]); 430 sprintf(card->longname + strlen(card->longname), "&%d", dma2[dev]);
432 431
433 err = snd_wss_timer(chip, 0, NULL); 432 err = snd_wss_timer(chip, 0);
434 if (err < 0) 433 if (err < 0)
435 return err; 434 return err;
436 435
diff --git a/sound/isa/cs423x/cs4236_lib.c b/sound/isa/cs423x/cs4236_lib.c
index c5adca300632..add7ffc072c5 100644
--- a/sound/isa/cs423x/cs4236_lib.c
+++ b/sound/isa/cs423x/cs4236_lib.c
@@ -376,17 +376,14 @@ int snd_cs4236_create(struct snd_card *card,
376 return 0; 376 return 0;
377} 377}
378 378
379int snd_cs4236_pcm(struct snd_wss *chip, int device, struct snd_pcm **rpcm) 379int snd_cs4236_pcm(struct snd_wss *chip, int device)
380{ 380{
381 struct snd_pcm *pcm;
382 int err; 381 int err;
383 382
384 err = snd_wss_pcm(chip, device, &pcm); 383 err = snd_wss_pcm(chip, device);
385 if (err < 0) 384 if (err < 0)
386 return err; 385 return err;
387 pcm->info_flags &= ~SNDRV_PCM_INFO_JOINT_DUPLEX; 386 chip->pcm->info_flags &= ~SNDRV_PCM_INFO_JOINT_DUPLEX;
388 if (rpcm)
389 *rpcm = pcm;
390 return 0; 387 return 0;
391} 388}
392 389
diff --git a/sound/isa/galaxy/galaxy.c b/sound/isa/galaxy/galaxy.c
index 1eb2b1ec0fd9..32278847884f 100644
--- a/sound/isa/galaxy/galaxy.c
+++ b/sound/isa/galaxy/galaxy.c
@@ -569,7 +569,7 @@ static int snd_galaxy_probe(struct device *dev, unsigned int n)
569 if (err < 0) 569 if (err < 0)
570 goto error; 570 goto error;
571 571
572 err = snd_wss_pcm(chip, 0, NULL); 572 err = snd_wss_pcm(chip, 0);
573 if (err < 0) 573 if (err < 0)
574 goto error; 574 goto error;
575 575
@@ -577,7 +577,7 @@ static int snd_galaxy_probe(struct device *dev, unsigned int n)
577 if (err < 0) 577 if (err < 0)
578 goto error; 578 goto error;
579 579
580 err = snd_wss_timer(chip, 0, NULL); 580 err = snd_wss_timer(chip, 0);
581 if (err < 0) 581 if (err < 0)
582 goto error; 582 goto error;
583 583
diff --git a/sound/isa/gus/gusmax.c b/sound/isa/gus/gusmax.c
index b2b3734a8e72..8216e8d8f017 100644
--- a/sound/isa/gus/gusmax.c
+++ b/sound/isa/gus/gusmax.c
@@ -309,7 +309,7 @@ static int snd_gusmax_probe(struct device *pdev, unsigned int dev)
309 if (err < 0) 309 if (err < 0)
310 goto _err; 310 goto _err;
311 311
312 err = snd_wss_pcm(wss, 0, NULL); 312 err = snd_wss_pcm(wss, 0);
313 if (err < 0) 313 if (err < 0)
314 goto _err; 314 goto _err;
315 315
@@ -317,7 +317,7 @@ static int snd_gusmax_probe(struct device *pdev, unsigned int dev)
317 if (err < 0) 317 if (err < 0)
318 goto _err; 318 goto _err;
319 319
320 err = snd_wss_timer(wss, 2, NULL); 320 err = snd_wss_timer(wss, 2);
321 if (err < 0) 321 if (err < 0)
322 goto _err; 322 goto _err;
323 323
diff --git a/sound/isa/gus/interwave.c b/sound/isa/gus/interwave.c
index 8ea54a7f78d2..70d0040484c8 100644
--- a/sound/isa/gus/interwave.c
+++ b/sound/isa/gus/interwave.c
@@ -647,7 +647,6 @@ static int snd_interwave_probe(struct snd_card *card, int dev)
647#ifdef SNDRV_STB 647#ifdef SNDRV_STB
648 struct snd_i2c_bus *i2c_bus; 648 struct snd_i2c_bus *i2c_bus;
649#endif 649#endif
650 struct snd_pcm *pcm;
651 char *str; 650 char *str;
652 int err; 651 int err;
653 652
@@ -695,14 +694,15 @@ static int snd_interwave_probe(struct snd_card *card, int dev)
695 if (err < 0) 694 if (err < 0)
696 return err; 695 return err;
697 696
698 err = snd_wss_pcm(wss, 0, &pcm); 697 err = snd_wss_pcm(wss, 0);
699 if (err < 0) 698 if (err < 0)
700 return err; 699 return err;
701 700
702 sprintf(pcm->name + strlen(pcm->name), " rev %c", gus->revision + 'A'); 701 sprintf(wss->pcm->name + strlen(wss->pcm->name), " rev %c",
703 strcat(pcm->name, " (codec)"); 702 gus->revision + 'A');
703 strcat(wss->pcm->name, " (codec)");
704 704
705 err = snd_wss_timer(wss, 2, NULL); 705 err = snd_wss_timer(wss, 2);
706 if (err < 0) 706 if (err < 0)
707 return err; 707 return err;
708 708
diff --git a/sound/isa/opl3sa2.c b/sound/isa/opl3sa2.c
index a219bc37816b..d7aff527da88 100644
--- a/sound/isa/opl3sa2.c
+++ b/sound/isa/opl3sa2.c
@@ -684,7 +684,7 @@ static int snd_opl3sa2_probe(struct snd_card *card, int dev)
684 return err; 684 return err;
685 } 685 }
686 chip->wss = wss; 686 chip->wss = wss;
687 err = snd_wss_pcm(wss, 0, NULL); 687 err = snd_wss_pcm(wss, 0);
688 if (err < 0) 688 if (err < 0)
689 return err; 689 return err;
690 err = snd_wss_mixer(wss); 690 err = snd_wss_mixer(wss);
@@ -693,7 +693,7 @@ static int snd_opl3sa2_probe(struct snd_card *card, int dev)
693 err = snd_opl3sa2_mixer(card); 693 err = snd_opl3sa2_mixer(card);
694 if (err < 0) 694 if (err < 0)
695 return err; 695 return err;
696 err = snd_wss_timer(wss, 0, NULL); 696 err = snd_wss_timer(wss, 0);
697 if (err < 0) 697 if (err < 0)
698 return err; 698 return err;
699 if (fm_port[dev] >= 0x340 && fm_port[dev] < 0x400) { 699 if (fm_port[dev] >= 0x340 && fm_port[dev] < 0x400) {
diff --git a/sound/isa/opti9xx/miro.c b/sound/isa/opti9xx/miro.c
index c2ca681ac51b..546452888aed 100644
--- a/sound/isa/opti9xx/miro.c
+++ b/sound/isa/opti9xx/miro.c
@@ -1270,8 +1270,6 @@ static int snd_miro_probe(struct snd_card *card)
1270 int error; 1270 int error;
1271 struct snd_miro *miro = card->private_data; 1271 struct snd_miro *miro = card->private_data;
1272 struct snd_wss *codec; 1272 struct snd_wss *codec;
1273 struct snd_timer *timer;
1274 struct snd_pcm *pcm;
1275 struct snd_rawmidi *rmidi; 1273 struct snd_rawmidi *rmidi;
1276 1274
1277 if (!miro->res_mc_base) { 1275 if (!miro->res_mc_base) {
@@ -1310,7 +1308,7 @@ static int snd_miro_probe(struct snd_card *card)
1310 if (error < 0) 1308 if (error < 0)
1311 return error; 1309 return error;
1312 1310
1313 error = snd_wss_pcm(codec, 0, &pcm); 1311 error = snd_wss_pcm(codec, 0);
1314 if (error < 0) 1312 if (error < 0)
1315 return error; 1313 return error;
1316 1314
@@ -1318,11 +1316,11 @@ static int snd_miro_probe(struct snd_card *card)
1318 if (error < 0) 1316 if (error < 0)
1319 return error; 1317 return error;
1320 1318
1321 error = snd_wss_timer(codec, 0, &timer); 1319 error = snd_wss_timer(codec, 0);
1322 if (error < 0) 1320 if (error < 0)
1323 return error; 1321 return error;
1324 1322
1325 miro->pcm = pcm; 1323 miro->pcm = codec->pcm;
1326 1324
1327 error = snd_miro_mixer(card, miro); 1325 error = snd_miro_mixer(card, miro);
1328 if (error < 0) 1326 if (error < 0)
@@ -1356,8 +1354,8 @@ static int snd_miro_probe(struct snd_card *card)
1356 1354
1357 strcpy(card->driver, "miro"); 1355 strcpy(card->driver, "miro");
1358 sprintf(card->longname, "%s: OPTi%s, %s at 0x%lx, irq %d, dma %d&%d", 1356 sprintf(card->longname, "%s: OPTi%s, %s at 0x%lx, irq %d, dma %d&%d",
1359 card->shortname, miro->name, pcm->name, miro->wss_base + 4, 1357 card->shortname, miro->name, codec->pcm->name,
1360 miro->irq, miro->dma1, miro->dma2); 1358 miro->wss_base + 4, miro->irq, miro->dma1, miro->dma2);
1361 1359
1362 if (mpu_port <= 0 || mpu_port == SNDRV_AUTO_PORT) 1360 if (mpu_port <= 0 || mpu_port == SNDRV_AUTO_PORT)
1363 rmidi = NULL; 1361 rmidi = NULL;
diff --git a/sound/isa/opti9xx/opti92x-ad1848.c b/sound/isa/opti9xx/opti92x-ad1848.c
index c9b582848603..840831f1dd4e 100644
--- a/sound/isa/opti9xx/opti92x-ad1848.c
+++ b/sound/isa/opti9xx/opti92x-ad1848.c
@@ -820,10 +820,6 @@ static int snd_opti9xx_probe(struct snd_card *card)
820 int xdma2; 820 int xdma2;
821 struct snd_opti9xx *chip = card->private_data; 821 struct snd_opti9xx *chip = card->private_data;
822 struct snd_wss *codec; 822 struct snd_wss *codec;
823#ifdef CS4231
824 struct snd_timer *timer;
825#endif
826 struct snd_pcm *pcm;
827 struct snd_rawmidi *rmidi; 823 struct snd_rawmidi *rmidi;
828 struct snd_hwdep *synth; 824 struct snd_hwdep *synth;
829 825
@@ -855,7 +851,7 @@ static int snd_opti9xx_probe(struct snd_card *card)
855 if (error < 0) 851 if (error < 0)
856 return error; 852 return error;
857 chip->codec = codec; 853 chip->codec = codec;
858 error = snd_wss_pcm(codec, 0, &pcm); 854 error = snd_wss_pcm(codec, 0);
859 if (error < 0) 855 if (error < 0)
860 return error; 856 return error;
861 error = snd_wss_mixer(codec); 857 error = snd_wss_mixer(codec);
@@ -867,7 +863,7 @@ static int snd_opti9xx_probe(struct snd_card *card)
867 return error; 863 return error;
868#endif 864#endif
869#ifdef CS4231 865#ifdef CS4231
870 error = snd_wss_timer(codec, 0, &timer); 866 error = snd_wss_timer(codec, 0);
871 if (error < 0) 867 if (error < 0)
872 return error; 868 return error;
873#endif 869#endif
@@ -884,11 +880,12 @@ static int snd_opti9xx_probe(struct snd_card *card)
884 sprintf(card->shortname, "OPTi %s", card->driver); 880 sprintf(card->shortname, "OPTi %s", card->driver);
885#if defined(CS4231) || defined(OPTi93X) 881#if defined(CS4231) || defined(OPTi93X)
886 sprintf(card->longname, "%s, %s at 0x%lx, irq %d, dma %d&%d", 882 sprintf(card->longname, "%s, %s at 0x%lx, irq %d, dma %d&%d",
887 card->shortname, pcm->name, 883 card->shortname, codec->pcm->name,
888 chip->wss_base + 4, irq, dma1, xdma2); 884 chip->wss_base + 4, irq, dma1, xdma2);
889#else 885#else
890 sprintf(card->longname, "%s, %s at 0x%lx, irq %d, dma %d", 886 sprintf(card->longname, "%s, %s at 0x%lx, irq %d, dma %d",
891 card->shortname, pcm->name, chip->wss_base + 4, irq, dma1); 887 card->shortname, codec->pcm->name, chip->wss_base + 4, irq,
888 dma1);
892#endif /* CS4231 || OPTi93X */ 889#endif /* CS4231 || OPTi93X */
893 890
894 if (mpu_port <= 0 || mpu_port == SNDRV_AUTO_PORT) 891 if (mpu_port <= 0 || mpu_port == SNDRV_AUTO_PORT)
diff --git a/sound/isa/sc6000.c b/sound/isa/sc6000.c
index 15a152eaa2e8..51cfa7615f72 100644
--- a/sound/isa/sc6000.c
+++ b/sound/isa/sc6000.c
@@ -625,7 +625,7 @@ static int snd_sc6000_probe(struct device *devptr, unsigned int dev)
625 if (err < 0) 625 if (err < 0)
626 goto err_unmap2; 626 goto err_unmap2;
627 627
628 err = snd_wss_pcm(chip, 0, NULL); 628 err = snd_wss_pcm(chip, 0);
629 if (err < 0) { 629 if (err < 0) {
630 snd_printk(KERN_ERR PFX 630 snd_printk(KERN_ERR PFX
631 "error creating new WSS PCM device\n"); 631 "error creating new WSS PCM device\n");
diff --git a/sound/isa/sscape.c b/sound/isa/sscape.c
index 44405df7d4be..018ab140c2be 100644
--- a/sound/isa/sscape.c
+++ b/sound/isa/sscape.c
@@ -877,7 +877,6 @@ static int create_ad1845(struct snd_card *card, unsigned port,
877 codec_type, WSS_HWSHARE_DMA1, &chip); 877 codec_type, WSS_HWSHARE_DMA1, &chip);
878 if (!err) { 878 if (!err) {
879 unsigned long flags; 879 unsigned long flags;
880 struct snd_pcm *pcm;
881 880
882 if (sscape->type != SSCAPE_VIVO) { 881 if (sscape->type != SSCAPE_VIVO) {
883 /* 882 /*
@@ -893,7 +892,7 @@ static int create_ad1845(struct snd_card *card, unsigned port,
893 892
894 } 893 }
895 894
896 err = snd_wss_pcm(chip, 0, &pcm); 895 err = snd_wss_pcm(chip, 0);
897 if (err < 0) { 896 if (err < 0) {
898 snd_printk(KERN_ERR "sscape: No PCM device " 897 snd_printk(KERN_ERR "sscape: No PCM device "
899 "for AD1845 chip\n"); 898 "for AD1845 chip\n");
@@ -907,7 +906,7 @@ static int create_ad1845(struct snd_card *card, unsigned port,
907 goto _error; 906 goto _error;
908 } 907 }
909 if (chip->hardware != WSS_HW_AD1848) { 908 if (chip->hardware != WSS_HW_AD1848) {
910 err = snd_wss_timer(chip, 0, NULL); 909 err = snd_wss_timer(chip, 0);
911 if (err < 0) { 910 if (err < 0) {
912 snd_printk(KERN_ERR "sscape: No timer device " 911 snd_printk(KERN_ERR "sscape: No timer device "
913 "for AD1845 chip\n"); 912 "for AD1845 chip\n");
diff --git a/sound/isa/wavefront/wavefront.c b/sound/isa/wavefront/wavefront.c
index bfbf38cf9841..a0987a57c8a9 100644
--- a/sound/isa/wavefront/wavefront.c
+++ b/sound/isa/wavefront/wavefront.c
@@ -380,11 +380,11 @@ snd_wavefront_probe (struct snd_card *card, int dev)
380 return err; 380 return err;
381 } 381 }
382 382
383 err = snd_wss_pcm(chip, 0, NULL); 383 err = snd_wss_pcm(chip, 0);
384 if (err < 0) 384 if (err < 0)
385 return err; 385 return err;
386 386
387 err = snd_wss_timer(chip, 0, NULL); 387 err = snd_wss_timer(chip, 0);
388 if (err < 0) 388 if (err < 0)
389 return err; 389 return err;
390 390
diff --git a/sound/isa/wss/wss_lib.c b/sound/isa/wss/wss_lib.c
index 347bb1bda110..6530d32901b9 100644
--- a/sound/isa/wss/wss_lib.c
+++ b/sound/isa/wss/wss_lib.c
@@ -1923,7 +1923,7 @@ static struct snd_pcm_ops snd_wss_capture_ops = {
1923 .pointer = snd_wss_capture_pointer, 1923 .pointer = snd_wss_capture_pointer,
1924}; 1924};
1925 1925
1926int snd_wss_pcm(struct snd_wss *chip, int device, struct snd_pcm **rpcm) 1926int snd_wss_pcm(struct snd_wss *chip, int device)
1927{ 1927{
1928 struct snd_pcm *pcm; 1928 struct snd_pcm *pcm;
1929 int err; 1929 int err;
@@ -1949,8 +1949,6 @@ int snd_wss_pcm(struct snd_wss *chip, int device, struct snd_pcm **rpcm)
1949 64*1024, chip->dma1 > 3 || chip->dma2 > 3 ? 128*1024 : 64*1024); 1949 64*1024, chip->dma1 > 3 || chip->dma2 > 3 ? 128*1024 : 64*1024);
1950 1950
1951 chip->pcm = pcm; 1951 chip->pcm = pcm;
1952 if (rpcm)
1953 *rpcm = pcm;
1954 return 0; 1952 return 0;
1955} 1953}
1956EXPORT_SYMBOL(snd_wss_pcm); 1954EXPORT_SYMBOL(snd_wss_pcm);
@@ -1961,7 +1959,7 @@ static void snd_wss_timer_free(struct snd_timer *timer)
1961 chip->timer = NULL; 1959 chip->timer = NULL;
1962} 1960}
1963 1961
1964int snd_wss_timer(struct snd_wss *chip, int device, struct snd_timer **rtimer) 1962int snd_wss_timer(struct snd_wss *chip, int device)
1965{ 1963{
1966 struct snd_timer *timer; 1964 struct snd_timer *timer;
1967 struct snd_timer_id tid; 1965 struct snd_timer_id tid;
@@ -1980,8 +1978,6 @@ int snd_wss_timer(struct snd_wss *chip, int device, struct snd_timer **rtimer)
1980 timer->private_free = snd_wss_timer_free; 1978 timer->private_free = snd_wss_timer_free;
1981 timer->hw = snd_wss_timer_table; 1979 timer->hw = snd_wss_timer_table;
1982 chip->timer = timer; 1980 chip->timer = timer;
1983 if (rtimer)
1984 *rtimer = timer;
1985 return 0; 1981 return 0;
1986} 1982}
1987EXPORT_SYMBOL(snd_wss_timer); 1983EXPORT_SYMBOL(snd_wss_timer);