Try that again. after saving this time :)
I have a small perl script which I am working on. The idea is to autodetect
a card/s and create a modules.conf based on that either at configure or as
a seperate process.
Can anyone who is more fluent in perl give me a hint as to how I can
compare the output of list_pci to list_modules and return the correct
card name and module?
The script has two subs. They just parse the /proc/pci and the INSTALL
file to get the current output. It has to be run from the alsa-driver dir.
--
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
========================================
sub list_pci {
open (FILE, "/proc/pci")
or die "Cannot open /proc/pci. \n Do you have permission to access this file?";
for $linepci (<FILE>) {
if ($linepci =~ /Multimedia audio controller/g) {
print $linepci;
}
}
# close FILE;
}
sub list_modules {
open (FILE, "INSTALL")
or die "Cannot open INSTALL. \n Do you have permission to access this file?";
for $linemodule (<FILE>) {
if ($linemodule =~ /\.o$/) {
print $linemodule;
}
}
# close FILE;
}
# Output to shell
list_modules();
print "\n The modules for the following card/s can be found in the above.\n If your
card is not listed below it means it is a PNP (very old)\n or USB card and this script
cannot find it.\n\n The modules for ALSA USB support are: \n\n \tsnd-usb-audio\n
\tsnd-usb-midi\n\n";
print " These are the cards found on your system:\n\n";
list_pci();
print "\n";