* [PATCH] cmi8330: find OPL3 port automatically
@ 2009-07-06 20:08 Ondrej Zary
0 siblings, 0 replies; only message in thread
From: Ondrej Zary @ 2009-07-06 20:08 UTC (permalink / raw)
To: alsa-devel
My CMI8329 had OPL3 port specified in SB16 resources. But now I found out that
it was my modification of the card's PnP EEPROM a couple of years ago (can be
done using C9SETROM.EXE utility). I did it because the OPL3 port was
completely missing from PnP data. It seems to be hardwired to 0x388 on
CMI8329.
Find OPL3 port automatically by searching in WSS and SB16 resources. If not
found, assume that it's hardwired to 0x388.
Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
--- linux-test/sound/isa/cmi8330.c 2009-07-06 21:18:06.000000000 +0200
+++ linux-2.6.30-pentium/sound/isa/cmi8330.c 2009-07-06 21:45:29.000000000
+0200
@@ -362,7 +362,7 @@
wssport[dev] = pnp_port_start(pdev, 0);
wssdma[dev] = pnp_dma(pdev, 0);
wssirq[dev] = pnp_irq(pdev, 0);
- if (acard->type == CMI8330)
+ if (pnp_port_start(pdev, 1))
fmport[dev] = pnp_port_start(pdev, 1);
/* allocate SB16 resources */
@@ -377,8 +377,13 @@
sbdma8[dev] = pnp_dma(pdev, 0);
sbdma16[dev] = pnp_dma(pdev, 1);
sbirq[dev] = pnp_irq(pdev, 0);
- if (acard->type == CMI8329)
- fmport[dev] = pnp_port_start(pdev, 1);
+ /* On CMI8239, the OPL3 port might be present in SB16 PnP resources */
+ if (fmport[dev] == SNDRV_AUTO_PORT) {
+ if (pnp_port_start(pdev, 1))
+ fmport[dev] = pnp_port_start(pdev, 1);
+ else
+ fmport[dev] = 0x388; /* Or hardwired */
+ }
/* allocate MPU-401 resources */
pdev = acard->mpu;
--
Ondrej Zary
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-07-06 20:08 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-06 20:08 [PATCH] cmi8330: find OPL3 port automatically Ondrej Zary
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.