Skip to contentSkip to conversation

ISAPNP support in ALSA (2.5.5-pre1) is broken

PATCH In review Andrey Panin 2 participants 2 messages Feb 18, 2002

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ISAPNP support in ALSA (2.5.5-pre1) is broken

Hi all,

ISA PnP support in 2.5.5-pre1 ALSA modules is broken.
1) it uses __ISAPNP__ without including linux/isapnp.h,
2) it uses isapnp_dev and isapnp_card sturctures which are not declared anywhere.

Attached patch fixes these problems, without it snd-sbawe module doesn't recognize my ISA PnP AWE64.

Best regards.

Signature · 2 lines
Andrey Panin            | Embedded systems software engineer
[email protected]        | PGP key: wwwkeys.eu.pgp.net
linux/sound/isa/ad1816a/ad1816a.c renamed from linux.vanilla/sound/isa/ad1816a/ad1816a.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/ad1816a/ad1816a.c /linux/sound/isa/ad1816a/ad1816a.c
@@ -20,6 +20,7 @@
 
 #include <sound/driver.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #define SNDRV_GET_ID
 #include <sound/initval.h>
linux/sound/isa/als100.c renamed from linux.vanilla/sound/isa/als100.c +2 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/als100.c /linux/sound/isa/als100.c
@@ -22,12 +22,14 @@
 
 #include <sound/driver.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #define SNDRV_GET_ID
 #include <sound/initval.h>
 #include <sound/mpu401.h>
 #include <sound/opl3.h>
 #include <sound/sb.h>
+
 
 #define chip_t sb_t
 
linux/sound/isa/azt2320.c renamed from linux.vanilla/sound/isa/azt2320.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/azt2320.c /linux/sound/isa/azt2320.c
@@ -34,6 +34,7 @@
 #include <asm/io.h>
 #include <linux/delay.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #define SNDRV_GET_ID
 #include <sound/initval.h>
linux/sound/isa/cmi8330.c renamed from linux.vanilla/sound/isa/cmi8330.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/cmi8330.c /linux/sound/isa/cmi8330.c
@@ -45,6 +45,7 @@
 
 #include <sound/driver.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #include <sound/ad1848.h>
 #include <sound/sb.h>
linux/sound/isa/cs423x/cs4236.c renamed from linux.vanilla/sound/isa/cs423x/cs4236.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/cs423x/cs4236.c /linux/sound/isa/cs423x/cs4236.c
@@ -21,6 +21,7 @@
 
 #include <sound/driver.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #include <sound/cs4231.h>
 #include <sound/mpu401.h>
linux/sound/isa/dt0197h.c renamed from linux.vanilla/sound/isa/dt0197h.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/dt0197h.c /linux/sound/isa/dt0197h.c
@@ -20,6 +20,7 @@
 
 #include <sound/driver.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #define SNDRV_GET_ID
 #include <sound/initval.h>
linux/sound/isa/es18xx.c renamed from linux.vanilla/sound/isa/es18xx.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/es18xx.c /linux/sound/isa/es18xx.c
@@ -68,6 +68,7 @@
 #include <asm/io.h>
 #include <asm/dma.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #include <sound/control.h>
 #include <sound/pcm.h>
linux/sound/isa/gus/interwave.c renamed from linux.vanilla/sound/isa/gus/interwave.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/gus/interwave.c /linux/sound/isa/gus/interwave.c
@@ -26,6 +26,7 @@
 #include <asm/dma.h>
 #include <linux/delay.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #include <sound/gus.h>
 #include <sound/cs4231.h>
linux/sound/isa/opl3sa2.c renamed from linux.vanilla/sound/isa/opl3sa2.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/opl3sa2.c /linux/sound/isa/opl3sa2.c
@@ -22,6 +22,7 @@
 #include <sound/driver.h>
 #include <asm/io.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <linux/pm.h>
 #include <sound/core.h>
 #include <sound/cs4231.h>
linux/sound/isa/opti9xx/opti92x-ad1848.c renamed from linux.vanilla/sound/isa/opti9xx/opti92x-ad1848.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/opti9xx/opti92x-ad1848.c /linux/sound/isa/opti9xx/opti92x-ad1848.c
@@ -27,6 +27,7 @@
 #include <asm/dma.h>
 #include <linux/delay.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #ifdef CS4231
 #include <sound/cs4231.h>
linux/sound/isa/sb/es968.c renamed from linux.vanilla/sound/isa/sb/es968.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/sb/es968.c /linux/sound/isa/sb/es968.c
@@ -22,6 +22,7 @@
 
 #include <sound/driver.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #define SNDRV_GET_ID
 #include <sound/initval.h>
linux/sound/isa/sb/sb16.c renamed from linux.vanilla/sound/isa/sb/sb16.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/sb/sb16.c /linux/sound/isa/sb/sb16.c
@@ -22,6 +22,7 @@
 #include <sound/driver.h>
 #include <asm/dma.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #include <sound/sb.h>
 #include <sound/sb16_csp.h>
linux/sound/isa/wavefront/wavefront.c renamed from linux.vanilla/sound/isa/wavefront/wavefront.c +1 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/sound/isa/wavefront/wavefront.c /linux/sound/isa/wavefront/wavefront.c
@@ -21,6 +21,7 @@
 
 #include <sound/driver.h>
 #include <linux/init.h>
+#include <linux/isapnp.h>
 #include <sound/core.h>
 #define SNDRV_GET_ID
 #include <sound/initval.h>
linux/include/sound/core.h renamed from linux.vanilla/include/sound/core.h +3 -0
diff -urN -X /usr/share/dontdiff /linux.vanilla/include/sound/core.h /linux/include/sound/core.h
@@ -338,4 +338,7 @@
 
 #define SNDRV_OSS_VERSION         ((3<<16)|(8<<8)|(1<<4)|(0))	/* 3.8.1a */
 
+#define isapnp_card pci_bus
+#define isapnp_dev pci_dev
+
 #endif /* __SOUND_CORE_H */
#1 lore raw
Quoted 6 lines · Andrey Panin

Hi all,

ISA PnP support in 2.5.5-pre1 ALSA modules is broken.
1) it uses __ISAPNP__ without including linux/isapnp.h,
2) it uses isapnp_dev and isapnp_card sturctures which are not declared anywhere.

Thanks. I've applied your patch with minor modifications to our CVS repository.

Jaroslav

-----
Jaroslav Kysela <[email protected]>
Linux Kernel Sound Maintainer
ALSA Project http://www.alsa-project.org
SuSE Linux http://www.suse.com