On Mon, Oct 31, 2011 at 12:34:29PM +0100, Adrian Knoth wrote:
http://adi.loris.tv/hdsp_20111031.tar.bz2
This archive contains two versions of the driver, the one (default) that
probably works for Fons and the other one that works for another user in
France.
The default one indeed just works.
The other one sometimes sort of works, but has several
problems:
1. It's necessary to rmmod/modprobe if the modules is already
loaded. The default one apparently doesn't require this.
2. Three times out of the five I tested, no ALSA devices were
created.
3. Provided we get past 1) and 2), amixer commands sometimes
fail (without any error). I'm using the script attached at the
end to initialise the RPM. With the 'test' driver I have to
run it two or three times before everything is OK. From then
on audio works as expected.
Init script:
------
#!/bin/bash
device="hw:DSP"
gain=32768
function set_gain ()
{
amixer -D$device cset numid=6 $1,$2,$3 > /dev/null 2>&1
}
# mixer inputs:
# 0,1 phono/line 1,2
# 2,3 phono/line 3,4
# 4 microphone
# 26-31 PCM channels
#
# mixer outputs:
# 0,1 line out 1,2
# 2,3 line out 3,4,
# 4,5 headphones
#
function resetmixer ()
{
for out in $(seq 0 5); do
for inp in $(seq 0 4); do
set_gain $inp, $out, 0
done
for inp in $(seq 26 31); do
set_gain $inp, $out, 0
done
done
}
function defaultrpm ()
{
# Set inputs to line level instead of phono.
amixer -D$device cset numid=3 3 > /dev/null 2>&1
amixer -D$device cset numid=4 3 > /dev/null 2>&1
# Disable bypass, outputs are PCM channels.
amixer -D$device cset numid=1 Off > /dev/null 2>&1
# Output assignments:
# PCM 1,2 to out 1,2.
set_gain 26,0,$gain
set_gain 27,1,$gain
# PCM 3,4 to out 3,4.
set_gain 28,2,$gain
set_gain 29,3,$gain
# PCM 5,6 to headphones.
set_gain 30,4,$gain
set_gain 31,5,$gain
}
resetmixer
defaultrpm
------
Ciao,
--
FA