Re: please review alsaconf patch
Hi,
Martin Habets wrote:
> Thanks for the info. I guess you must have an "audio" device on the
> ebus then, and I failed to check for that in my original patch.
> Could you try the patch attached in stead of the original one, please?
Unfortunately, it didn't work out-of-the-box. With a bit of polishing I
could at least make it run (see attached incremental patch to your changes).
Some comments to the respective changes:
(1) $PROCFS was not defined, so I set it manually. I didn't know where
you intended it to come from so I just set it in the beginning of the
patch to /proc.
(2) I guess you meant mounting openpromfs in case /proc/openprom exists?
Therefore && instead of ||.
(3) Under /proc/openprom/pci@40,4700000/ebus@5, I have a directory
called "audio@1,200000". Therefore, I needed to search for "audio*"
instead of "audio".
(4) The file "compatible" contains: "'SUNW,CS4231'" (with single
quotes). I needed to remove them.
Now, alsaconf detects the device fine. (Also consider FJP's comments on
using modprobe.)
However, there are some issues left with my CS4231: On bootup, the
modules are not loaded automatically (even hotplug doesn't care about
them). So I need to put "snd-sun-cs4231" into /etc/modules. Further,
when I want to play something (e.g., with xmms), I often (unpredictably)
get (white?) noise. Retrying helps every 3rd or 4th time. Maybe
alignment or endianess issues. But these are different issues and not
related to alsaconf I think. If noone else has experienced this yet, I
will need to dive into the driver myself later.
Thanks for now.
bye,
Roland
--- alsaconf.orig 2005-11-01 12:39:37.000000000 +0100
+++ alsaconf 2005-11-01 12:38:53.000000000 +0100
@@ -588,16 +588,19 @@
#
# Sparc
#
+ PROCFS=/proc
if grep -q Sparc $PROCFS/cpuinfo; then
- test -r $PROCFS/openprom || /bin/mount -t openpromfs none $PROCFS/openprom >/dev/null 2>&1
+ test -r $PROCFS/openprom && /bin/mount -t openpromfs none $PROCFS/openprom >/dev/null 2>&1
# Check for an "audio" device
audio=
compat=
if test -r $PROCFS/openprom; then
- audio=`find $PROCFS/openprom -follow -type d -name "audio" -print`
+ audio=`find $PROCFS/openprom -follow -type d -name "audio*" -print`
fi
if test -n "$audio"; then
compat=`cat $audio/compatible`
+ compat=${compat#\'}
+ compat=${compat%\'}
compat=${compat#SUNW,}
fi
# Go through all cards we have
Reply to: