change awe_wave initialization to match 2.2 better
PATCH 1/1 change awe_wave initialization to match 2.2 better
The awe_wave driver in 2.2 looked at the common I/O ports for the card if no parameters were specified. The 2.4 driver currently does an ISAPnP probe, but doesn't fall back to the previous probing behavior, which means that users with working module configurations will have theirs broken on upgrade.
The attached fixes it to fall back to 2.2-style behavior if no parameters are specified; if 'isapnp=1' is specified, it does not try to look for cards if the ISAPnP probe fails.
Bill
drivers/sound/awe_wave.c renamed from drivers/sound/awe_wave.c.foo +6 -4
@@ -206,7 +206,7 @@int io =AWE_DEFAULT_BASE_ADDR ;/* Emu8000 base address */ int memsize =AWE_DEFAULT_MEM_SIZE ;/* memory size in Kbytes */ #if definedCONFIG_ISAPNP || definedCONFIG_ISAPNP_MODULE -static int isapnp =1 ; +static int isapnp =-1 ;#else static int isapnp =0 ;#endif
@@ -4838,10 +4838,12 @@if (isapnp) {if (awe_probe_isapnp (&io) <0 ) {printk (KERN_ERR "AWE32: No ISAPnP cards found\n" ); -return 0 ; +if (isapnp !=-1 ) +return 0 ; + }else { +setup_ports (io,0 ,0 ); +return 1 ; } -setup_ports (io,0 ,0 ); -return 1 ; }#endif /* isapnp */
Quoted 6 lines · Bill Nottingham
The
awe_wavedriver in 2.2 looked at the common I/O ports for the card if no parameters were specified. The 2.4 driver currently does an ISAPnP probe, but doesn't fall back to the previous probing behavior, which means that users with working module configurations will have theirs broken on upgrade.
Don't know if what follows has something to do with the patch you submitted, but under kernel 2.2.x SB AWE 64 had a nasty problem. pnpdump from the isapnptools (all versions I've tested) only reports one of a total of three IO adresses for the Wavetable device:
(IO 0 (SIZE 4) (BASE 0x0620))
(IO 1 (SIZE 4) (BASE 0x0A20)) <-- not reported by pnpdump (IO 2 (SIZE 4) (BASE 0x0E20)) <-- not reported by pnpdump
The latter two lines where manually added, as described in the SB-AWE-HOWTO. Using isapnptools 1.21-2 (Debian Potato) the card configures correctly, but with isapnptools 1.23-0.3 (Debian Woody) there is an error trying to parse the first of the manually added lines (Don't know what to do with A20)) on or around line 350).
It seem obvious that this change in behaviour is isapnptools related, but not detecting the whole three IO addresses is an unresolved problem (as of 2.2.18, not tried with built-in PnP support in 2.4.x).
Would you need more information ?. I'm a totally kernel-devel newbie, but with 3+ years using Linux, I think I can help with testing and triying with kernel 2.4.x or patched 2.2.x.
Signature · 5 lines
José Luis Domingo López Linux Registered User #189436 Debian GNU/Linux Potato (P166 64 MB RAM) jdomingo EN internautas PUNTO org => ¿ Spam ? Atente a las consecuencias jdomingo AT internautas DOT org => Spam at your own risk
Quoted 3 lines
It seem obvious that this change in behaviour is isapnptools related, but not detecting the whole three IO addresses is an unresolved problem (as of 2.2.18, not tried with built-in PnP support in 2.4.x).
Its a bug in the hardware