[alsa-devel] Problem with VIA VT1708S and git versions of alsa-driver.

Raymond Yau superquad.vortex2 at gmail.com
Thu Jan 27 10:09:34 CET 2011


2011/1/27 Mark Goldstein <goldstein.mark at gmail.com>

> Hi,
>
> I've renewed my experiments after long break (sorry, had to do other
> stuff and since released version 1.0.23 worked for me, I reverted to
> that version).
>
> I still have not tried hda-emulator, but I made some progress.
>
> 1) I compiled the git version (snapshot from Jan 20) for OpenSUSE 11.1
> with test kernel 2.6.32.28.
> I saw the same behavior as before:
> - Line control does nothing;
> - Front Mic control actually changes volume of Line In;
> - Neither Front nor Rear Mic work at all; (Answering to Raymond's
> question regarding Mic Boost - I have "Rear Mic" control, but Mic
> Boost).
>
> 2) I decided to compare patch.via.c from version 1.0.23 that works for
> me and git version.
> It appears to me that the clue could be found in the function
> vt1708S_auto_create_analog_input_ctls. The one in 1.0.23 uses explicit
> control indexes, while the function from git version calls
> vt_auto_create_analog_input_ctls, passing it the array of indexes:
> static hda_nid_t pin_idxs[] = { 0x1f, 0x1a, 0x1b, 0x1e, 0, 0xff };
>
> Comparing the indexes used in  vt1708S_auto_create_analog_input_ctls
> with those used for other codec and with version from 1.0.23, I
> started suspecting that the order of indexes is wrong. I changed the
> array like this:
> static hda_nid_t pin_idxs[] = { 0, 0x1f, 0x1a, 0x1b, 0x1e, 0xff };
> After re-compiling the version I've got much better behavior:
> - Line control (index 1b) works correctly now;
> - Front Mic control (index 0x1e) actually controls Rear Mic and this
> Rear Mic works;
> - Front mic still does not work;
> - Rear Mic control (index 0x1a) seems not working and there is still
> Mic Boost, not Rear Mic Boost.
>
>
Do you mean that regiession is caused by this patch ?

http://git.alsa-project.org/?p=alsa-kernel.git;a=commitdiff;h=f3268512c3a5dea587cfe875b8bca98d9e164cd9;hp=73413b120d5d6eb6c98451bbc19acf43e0e300ae


it seem vt_auto_create_analog_input_ctls() try to assign stereo mixer as the
first item of the imux(s) node 0x17 and 0x1e

assign those playback volume of those input pins in to stereo mixer for node
0x16

but it should assign auto_pin_cfg_labels[] according to the imux node 0x17
and 0x1e


More information about the Alsa-devel mailing list