Breakage of opl3sax cards since 2.4.3 (at least)

David Bronaugh (dbronaugh@opensourcedot.com)
Tue, 1 May 2001 15:39:41 -0700


OK, cutting to chase:

opl3sax cards have refused to init in Linux with the in-kernel OSS driver
since 2.4.3 at least (last I tested and worked was 2.4.1). I'm pretty sure
this is a kernel issue as it's happened on 2 different machines, one of
which I never goofed around with.

Usually message is something like:

opl3sa2: Control I/O port 0x220 (or whatever is tried) is not a YMF7xx
chipset!

I'm not sure why this occurs, but here is the code block where the error
probably occurs:

/* SNIP */
opl3sa2_read(hw_config->io_base, OPL3SA2_MISC, &misc);
opl3sa2_write(hw_config->io_base, OPL3SA2_MISC, misc ^ 0x07);
opl3sa2_read(hw_config->io_base, OPL3SA2_MISC, &tmp);
if(tmp != misc) {
printk(KERN_ERR "opl3sa2: Control I/O port %#x is not a
YMF7xx chipset!\n",
hw_config->io_base);
return 0;
}

/*
* Check if the MIC register is accessible.
*/
opl3sa2_read(hw_config->io_base, OPL3SA2_MIC, &tmp);
opl3sa2_write(hw_config->io_base, OPL3SA2_MIC, 0x8a);
opl3sa2_read(hw_config->io_base, OPL3SA2_MIC, &tmp);
if((tmp & 0x9f) != 0x8a) {
printk(KERN_ERR
"opl3sa2: Control I/O port %#x is not a YMF7xx
chipset!\n",
hw_config->io_base);
return 0;
}
/* SNIP */

Maybe this is a dumb check because there's an anomaly with the OPL3SAx
chip. I don't know.

I'm not on the list, so please forward any mail sent about this to me.

David Bronaugh

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/