[alsa-devel] SB X-Fi driver status update
Takashi Iwai
tiwai at suse.de
Thu Oct 16 15:18:32 CEST 2008
Hi,
now I'm stabilizing the driver a bit. I hope it won't hang up any
more (so often), and make you happy testing.
** DOWNLOAD **
The snd-sbxfi driver is included in my sound-unstable git tree, and
alsa-driver-unstable snapshot tarball.
git://git.kernel.org/pub/scm/linux/kernel/tiwai/sound-unstable-2.6.git
ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/snapshot/alsa-driver-unstable-snapshot.tar.gz
The git commits can be browsed via
http://git.kernel.org/?p=linux/kernel/git/tiwai/sound-unstable-2.6.git;a=summary
The snapshot tarball includes HEAD and alsa-kernel/HEAD files. These
contain alsa-driver and sound git commit logs. Check these files and
compare with the above gitweb page whether you have the latest
version.
** BUILD **
If you want to build the sbxfi driver on your 2.6.27 git tree, at
best, do the following:
- pull sound-2.6.git tree devel branch
% git pull \
git://git.kernel.org/pub/scm/linux/kernel/tiwai/sound-2.6.git devel
- pull sound-unstable-2.6.git tree topic/sbxfi branch
% git pull \
git://git.kernel.org/pub/scm/linux/kernel/tiwai/sound-unstable-2.6.git\
topic/sbxfi
In that way, you can update only the sound and keep the rest clean.
(The master branches of sound and sound-unstable git trees are for the
latest upsteram, i.e. 2.6.28-pre git tree.)
In other versions, it'd be better to use alsa-driver-unstable snapshot
tarball to build external modules.
** UPDATED NOTES **
Below are some updates:
- As default, the driver works only as a constant sample rate, either
48000 or 96000 (default). The rate can be changed via the module
option base_rate. For enabling the continuous rate support (it was
on before), define XXX_CONT_RATE in sbxfi.c.
- The debug module option is 1 as default, i.e. showing some debug
messages but not too often. You can set debug=0 to suppress, or
debug=2 or 3 to see more. If you have problems (especially
regarding with the sound quality problem), run with debug=2.
- Please check whether the default (base_rate=96000) works as is for
different rates, formats, channels. Then try base_rate=48000.
- If you are brave, try recording, too :) It's no full-duplex, so you
can't play and record at the same time. Define XXX_FULL_DUPLEX in
sbxfi.c to enable the (possible) full-duplex.
- If playback works well, try to define XXX_USE_SG in sbxfi.c. This
will make the driver using SG buffer instead of continuous pages.
- Also, test SBXFI_DMA_MASK being DMA_32BIT_MASK, especially if you
have RAM more than 2GB.
- You can try dmix as well. E.g. simply run like
% aplay -Dplug:dmix:0 foo.wav
thanks,
Takashi
More information about the Alsa-devel
mailing list