[alsa-devel] [PATCH] [resend] cmi8330: find OPL3 port automatically
Takashi Iwai
tiwai at suse.de
Thu Jul 9 09:36:28 CEST 2009
At Wed, 8 Jul 2009 10:04:29 +0200,
Ondrej Zary wrote:
>
> 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 at rainbow-software.org>
This was already merged. Seems either I forgot mail you or my mail
didn't go out (maybe the former :)
thanks,
Takashi
>
> --- 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
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
>
More information about the Alsa-devel
mailing list