[alsa-devel] [PATCH] snd-sbxfi: implement Master volume control
xarteras at nostalgicnetworxx.org
Mon Oct 20 14:21:47 CEST 2008
Takashi Iwai wrote:
> At Mon, 20 Oct 2008 07:59:32 +0200,
> I wrote:
>> At Sun, 19 Oct 2008 18:08:15 -0500,
>> William Pitcock wrote:
>>> Unfortunately, the X-Fi does not have a hardware master volume control, so we have
>>> to create a virtual master and bind all playback controls to it.
>>> This patch depends on the patch that renames Master to PCM.
>>> Signed-off-by: William Pitcock <nenolod at sacredspiral.co.uk>
>> I don't like this patch because the virtual master implementation is
>> already found in sbxfi.c No reason to use yet another vmaster
>> framework in addition.
>> So, no I don't apply both patches. A simpler fix is just to add PCM
>> volume like Master volume. Both can use the same callbacks, so the
>> addition would be pretty small.
> I added PCM volume now using the same mechanism as Master volume.
> Please give it a try, and let me know if it's broken.
The last version from git is again, not working for me.
To make it work the following fixes are needed:
The correct option for the ratec is SRCCTL_STATE_INIT, not
--- sbxfi.c.ori 2008-10-20 14:13:53.000000000 +0200
+++ sbxfi.c 2008-10-20 14:18:06.000000000 +0200
@@ -542,7 +542,7 @@
ratec |= SRCCTL_FMT_S16;
ratec |= SRCCTL_BUS_MASTER;
- ratec |= SRCCTL_STATE_TAIL;
+ ratec |= SRCCTL_STATE_INIT;
ctrl = ratec;
ctrl |= SRCCTL_PITCH_MASTER; /* master */
Also for some strange and for me unknown reason the patch "ALSA:
snd-sbxfi: use SBXXXX model numbers instead of user-unfriendly names
like UAA and ORIG." broke sound output, too.
Reverting it and applying the patch above fixes the driver for me.
More information about the Alsa-devel