BBS水木清华站∶精华区
发信人: ClearMind (我是谁?), 信区: Linux
标 题: 哥们,还在为您的AC97伤脑筋么?[英文]
发信站: BBS 水木清华站 (Sun Oct 22 15:31:12 2000)
URL: http://www.linuxnewbie.org/nhf/intel/hardware/southbridge_alsa.html
===========================Begin=========================
Installing ALSA for the VT82C686 integrated sound
Written By: Chris High
based on the NHF by Todd Davis for Yamaha
This tutorial is specifically tailored towards installing ASLA and
getting it configured for the VT82C686 [Apollo Super AC97/Audio] aka
Southbridge integrated sound, with an effort to include information on
how to locate the particulars for other sound systems. This tutorial
is meant to supplement, not replace, ALSA's own documentation files.
ASLA stands for Advanced Linux Sound Architecture, and was developed
as a method of modularizing and standardizing sound for Linux. If your
Linux distribution already supports your sound card, then you don't
need ALSA. Be aware that Via Technologies does release drivers for
this sound device for Redhat and Caldera, see the end of the tutorial
for a reference on where to pick them up at.
This tutorial assumes several things:
* You have Linux installed and working
* You are using an X based desktop, such as KDE or Gnome
* You are logged in as Root, or have used 'su'
* You know what a terminal window is, and can enter commands
* You have been able to acquire the ALSA 0.5.8a (or newer) source
files, and that they reside in your home directory; ALSA web site is:
http://www.alsa-project.org/
* You have no soundcard card and are using the integrated sound chips
on your mb, and those chips are the Southbridge set.
There are 3 packages available for ALSA:
* alsa-driver-0.5.9c.tar.bz2
* alsa-lib-0.5.9.tar.bz2
* alsa-utils-0.5.9b.tar.bz2
You will need at least 5.9 to pickup the VT82C686
The only package that we need for sound, and the only one that we be
covered here, is the driver package. It is assumed that this file is
in your home directory, if not you will need to 'cd' to wherever it is
located. Let's begin.
Start by opening a terminal window. Type:
ls
This should give you a listing of all the files and folders in your
home directory. You should see the asla-driver-0.5.8a.tar.gz file in
this list. If you have a newer version of this file, then note down
that name, as you will be using it in place of the 0.5.8 references
made here. Type:
bzip2 -d alsa-driver-0.5.9c.tar.bz2
This will uncompress the zipped up file, leaving you with a file
called asla-driver-0.5.9c.tar. Now we can extract those files by
typing:
tar xvf alsa-driver-0.5.9c.tar
At this point, a directory called alsa-driver-0.5.9c has been created,
and the source code has been placed in the directory. Switch to the
new directory by typing:
cd alsa-driver-0.5.9c
You may wish to type an ls command to make sure that there are files
in this directory. I recommend that you read any README and INSTALL
files to make sure there is no new information necessary to install
ALSA.
ALSA will configure the source code for your system automatically by
typing:
./configure
Note that the "./" is part of the command and is necessary. The
'configure' script has several options that can assist you in
customizing the source to your system and sound card. For the
VT82C686, you will not need them. Those of you with an older, ISAPNP
sound card may need to run configure with this switch (./configure
--with--isapnp=yes). Read the included docs for other options
available.
Once configure is complete, we need to compile the source to produce
the binary files. This is done by typing:
make
The compile process can take a while, depending on the speed of your
computer. It is normal for small 'warnings' to come up during the
compile process, which should not stop the compile, and should not
alarm you. If the process encounters a fatal error, the compile will
halt and alert you. At that point, you will need determine the problem
and try to resolve it before recompiling.
Assuming the process was successful, type:
make install
to install the ALSA binaries. We are now halfway done (roughly).
Incidentally, if you have downloaded the ALSA lib and utils packages,
you may follow the same basic above procedure to install those
packages as well, but they are not needed for sound.
ALSA has provided a script file that will create the new sound devices
for us, and it will put them in the /dev directory. To run this
script, type:
./snddevices
This is the part of the install that causes the most confusion for
people, and the documentation provided by ALSA is sparse and
confusing. It is necessary to modify Modprobe's configuration file
with the necessary ALSA information. This file resides under the /etc
directory, and depending on what version of Modprobe you have
installed, it may be called either 'conf.modules', or 'modules.conf'.
For newbies, the easiest way to locate and edit this file is to use
the graphical file manager in KDE or Gnome (or whatever) to locate
this file, and click on it to open up a text editor. There may already
be a few lines of text in there, which we don't want to disturb.
Let me take a moment here to recommend that you make a backup copy of
this file before proceeding. A backup 'should' automatically be
created later, but just to be safe, do it by hand. Name it
conf.modules.old or something similar to that, and put it in a safe
place, just in case. Always backup any file you edit by hand.
If you are using something other than VT82C686, you have have to
figure out what ALSA call your card, and what, if any snd_id you will
need for the interwave entry. Many sound cards have listed in the
ALSA doc what you should use but many of the newer "cards" dont. If
not, try the following:
Where $Install is where you've placed your ALSA install (perhaps
/usr/local/alsa),
cd $Install/alsa-driver-0.5.9c/modules
ls
These are the possible values you can replace snd-card-via686a with.
To determine if your card requires the extra snd_id parm:
cd $Install/alsa-driver-0.5.9c/cards
grep Card: YOURDRIVERFILE.c
This should list the possible id's your card might take; for the
via686a this returns nothing, this means you don't have to specify
that parameter. You might also find that grep "Card identification
stuff" *.c in this dir will help you figure out which driver works for
your card. The trick is that some of the module names leave off
"card", so you still have to go to the module dir to figure out which
name you should specify in the configuration file.
Once you have the conf.modules file open in your text editor, move the
text cursor to the line after any other existing entries, and add
these lines to the file:
# ALSA native device support
alias char-major-116 snd
options snd snd_major=116 snd_cards_limit=1
alias snd-card-0 snd-card-via686a
#next line might need to have snd_id, if so...
options snd-card-interwave snd_index=0 # see below
# OSS/Free setup
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
#----------> end add to /etc/conf.modules
Some cards require something more like this on the interwave.
options snd-card-interwave snd_index=0 snd_id="YMF724"
#I also found I had to remove:
alias sound-slot-0 sb
options sound dmabuf=1
alias midi opl3
options opl3 io=0x388
options sb io=0x240 irq=5 dma=1
#---------> end remove /etc/conf.modules
Save this file under the same name. If your first guess at snd_id and
snd_card dont work, keep trying variations.
Almost done now. Switch back to the console, and enter the following
command:
modprobe snd-card-via686a
For all intents and purposes, your ALSA driver is now setup and ready
to go, but there are a few things you should be aware of. First of
all, reboot. It's a pain, but I like to take the side of caution and
make sure that everything loads and works as it should.
NOTE: This is important. When the driver is first installed, it sets
all the mixer channels to "Mute". You must use a mixer app of some
sort to turn the volume up on the various sound channels. I use KDE,
and the mixer app built into the status bar works just fine. If you
downloaded the ALSA utils also, there is a mixer app in there that you
can use as well.
Finally, you may want or need to setup "aslasound" as a startup
service. It is beyond the scope of this document to discuss each
distro's method of doing this. However, most distros now come with
utilities to help you setup your startup services using a GUI of some
sort. If not, you may need to edit your /etc/rc.local file by hand.
Have fun with ALSA. So far, it has worked 100% with my KDE sounds,
playing CD's and starcraft had sound with no problems.
Some non-ALSA help for Southbridge:
For folks running redhat or caldera, you can pickup drivers at VIA
Technologies's web site,
http://www.via.com.tw/drivers/index.htm
Look in the section that discusses enabling the VT82C686A Southbridge
Audio Drivers
Incidentally, the MB I had which has this chipset is Biostart's M7VKB
Would you like to have your article published online? Send them in to
newfiles@linuxnewbie.org
========================End===================================
谁有空翻译或者改编一把好了。呵呵...
--
※ 来源:·BBS 水木清华站 smth.org·[FROM: 210.73.87.125]
BBS水木清华站∶精华区