From cae011992e6a7867fad52e67025369b2c21d67f5 Mon Sep 17 00:00:00 2001 From: Bjorn Helgaas Date: Mon, 27 Mar 2006 01:17:07 -0800 Subject: [PATCH] --- yaml --- r: 24350 b: refs/heads/master c: 070c6999831dc4cfd9b07c74c2fea1964d7adfec h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/sound/oss/cs4232.c | 15 ++++++++++----- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 0ac438caa0e5..7eee31e561b5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 803d0abb3dcfc93701c8a8dc7f2968a47271214c +refs/heads/master: 070c6999831dc4cfd9b07c74c2fea1964d7adfec diff --git a/trunk/sound/oss/cs4232.c b/trunk/sound/oss/cs4232.c index 7c59e2d4003a..c7f86f09c28d 100644 --- a/trunk/sound/oss/cs4232.c +++ b/trunk/sound/oss/cs4232.c @@ -360,6 +360,8 @@ static int __initdata synthio = -1; static int __initdata synthirq = -1; static int __initdata isapnp = 1; +static unsigned int cs4232_devices; + MODULE_DESCRIPTION("CS4232 based soundcard driver"); MODULE_AUTHOR("Hannu Savolainen, Paul Barton-Davis"); MODULE_LICENSE("GPL"); @@ -421,6 +423,7 @@ static int cs4232_pnp_probe(struct pnp_dev *dev, const struct pnp_device_id *dev return -ENODEV; } pnp_set_drvdata(dev,isapnpcfg); + cs4232_devices++; return 0; } @@ -455,10 +458,11 @@ static int __init init_cs4232(void) #endif cfg.irq = -1; - if (isapnp && - (pnp_register_driver(&cs4232_driver) > 0) - ) - return 0; + if (isapnp) { + pnp_register_driver(&cs4232_driver); + if (cs4232_devices) + return 0; + } if(io==-1||irq==-1||dma==-1) { @@ -503,7 +507,8 @@ static int __init setup_cs4232(char *str) int ints[7]; /* If we have isapnp cards, no need for options */ - if (pnp_register_driver(&cs4232_driver) > 0) + pnp_register_driver(&cs4232_driver); + if (cs4232_devices) return 1; str = get_options(str, ARRAY_SIZE(ints), ints);