Enabling sound card on Mandriva 2007 using Virtual PC 2007
Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Enabling sound card on Mandriva 2007 using Virtual PC 2007
I use gbowden's solution at http://www.linuxquestions.org/questi...ual-pc-149181/ , but don't work in Mandriva 2007. Mandriva 2007 sets IRQ 7 at sb card by default. The correct value is IRQ 5. My solution was this:
Make a full file backup of directories: (use root privileges)
In /usr/src/linux-2.6.17-5mdv/sound/oss in the file
sb_card.c
replace all contents by:
PHP Code:
/* * sound/oss/sb_card.c * * Detection routine for the ISA Sound Blaster and compatable sound * cards. * * This file is distributed under the GNU GENERAL PUBLIC LICENSE (GPL) * Version 2 (June 1991). See the "COPYING" file distributed with this * software for more info. * * This is a complete rewrite of the detection routines. This was * prompted by the PnP API change during v2.5 and the ugly state the * code was in. * * Copyright (C) by Paul Laufer 2002. Based on code originally by * Hannu Savolainen which was modified by many others over the * years. Authors specifically mentioned in the previous version were: * Daniel Stone, Alessandro Zummo, Jeff Garzik, Arnaldo Carvalho de * Melo, Daniel Church, and myself. * * 02-05-2003 Original Release, Paul Laufer <paul@laufernet.com> * 02-07-2003 Bug made it into first release. Take two. */
MODULE_DESCRIPTION("OSS Soundblaster ISA PnP and legacy sound driver"); MODULE_LICENSE("GPL");
extern void *smw_free;
static int __initdata mpu_io = 0; static int __initdata io = -1; static int __initdata irq = 5; static int __initdata dma = -1; static int __initdata dma16 = -1; static int __initdata type = 0; /* Can set this to a specific card type */ static int __initdata esstype = 0; /* ESS chip type */ static int __initdata acer = 0; /* Do acer notebook init? */ static int __initdata sm_games = 0; /* Logitech soundman games? */
static struct sb_card_config *legacy = NULL;
#ifdef CONFIG_PNP static int pnp_registered; static int __initdata pnp = 1; /* static int __initdata uart401 = 0; */ #else static int __initdata pnp = 0; #endif
module_param(io, int, 000); MODULE_PARM_DESC(io, "Soundblaster i/o base address (0x220,0x240,0x260,0x280)"); module_param(irq, int, 000); MODULE_PARM_DESC(irq, "IRQ (5,7,9,10)"); module_param(dma, int, 000); MODULE_PARM_DESC(dma, "8-bit DMA channel (0,1,3)"); module_param(dma16, int, 000); MODULE_PARM_DESC(dma16, "16-bit DMA channel (5,6,7)"); module_param(mpu_io, int, 000); MODULE_PARM_DESC(mpu_io, "MPU base address"); module_param(type, int, 000); MODULE_PARM_DESC(type, "You can set this to specific card type (doesn't " \ "work with pnp)"); module_param(sm_games, int, 000); MODULE_PARM_DESC(sm_games, "Enable support for Logitech soundman games " \ "(doesn't work with pnp)"); module_param(esstype, int, 000); MODULE_PARM_DESC(esstype, "ESS chip type (doesn't work with pnp)"); module_param(acer, int, 000); MODULE_PARM_DESC(acer, "Set this to detect cards in some ACER notebooks "\ "(doesn't work with pnp)");
#ifdef CONFIG_PNP module_param(pnp, int, 000); MODULE_PARM_DESC(pnp, "Went set to 0 will disable detection using PnP. "\ "Default is 1.\n"); /* Not done yet.... */ /* module_param(uart401, int, 000); MODULE_PARM_DESC(uart401, "When set to 1, will attempt to detect and enable"\ "the mpu on some clones"); */ #endif /* CONFIG_PNP */
/* OSS subsystem card registration shared by PnP and legacy routines */ static int sb_register_oss(struct sb_card_config *scc, struct sb_module_options *sbmo) { if (!request_region(scc->conf.io_base, 16, "soundblaster")) { printk(KERN_ERR "sb: ports busy.\n"); kfree(scc); return -EBUSY; }
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.