An error occurred fetching the project authors.
- 10 Dec, 2012 1 commit
-
-
Lydia Wang authored
Add support for new codec VT1705CF. When power on/off Audio output converter of VT1705CF, the stream tag will be cleared. But driver caches the value. So when power on Audio output converter, the update_conv_power_state() will restore the saved stream tag of it. Signed-off-by:
Lydia Wang <lydiawang@viatech.com.cn> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 30 Nov, 2012 1 commit
-
-
Takashi Iwai authored
The same type of code is being used in multiple places in various codec drivers, so put it as a core library. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 28 Nov, 2012 1 commit
-
-
Takashi Iwai authored
This is a preliminary patch for introducing a protection to access races of snd_array instances. Call snd_array_init() appropriately at the initialization time and don't call it twice. Also the allocations of codec-spec structs are cleaned up by helper functions in patch_sigmatel.c and patch_analog.c. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 09 Nov, 2012 1 commit
-
-
David Henningsson authored
A closer look shows that the name is not even used and can be removed. Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 08 Nov, 2012 2 commits
-
-
Takashi Iwai authored
When 2.1 speakers are detected, use the corresponding channel map instead of the standard map with front+rear surrounds. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
When two built-in speakers are found on the machine, we can suppose it's rather a 2.1 speaker system with a bass output instead of front/surround channels. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 07 Nov, 2012 3 commits
-
-
Takashi Iwai authored
To parse properly the subwoofer outputs on ASUS G75 laptop with VT1802 codec, correct the default configurations of speaker pins 0x24 and 0x33. Reported-by:
Massimo Del Fedele <max@veneto.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
VT1802 codec provides the invalid connection lists of NID 0x24 and 0x33 containing the routes to a non-exist widget 0x3e. This confuses the auto-parser. Fix it up in the driver by overriding these connections. Reported-by:
Massimo Del Fedele <max@veneto.com> Cc: <stable@vger.kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
In via_auto_fill_adc_nids(), the parser tries to fill dac_nids[] at the point of the current line-out (i). When no valid path is found for this output, this results in dac = 0, thus it creates a hole in dac_nids[]. This confuses is_empty_dac() and trims the detected DAC in later reference. This patch fixes the bug by appending DAC properly to dac_nids[] in via_auto_fill_adc_nids(). Reported-by:
Massimo Del Fedele <max@veneto.com> Cc: <stable@vger.kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 10 Oct, 2012 1 commit
-
-
Takashi Iwai authored
The commit [4b527b65 ALSA: hda - limit internal mic boost for Asus X202E] introduced the use of auto-parser code, but it forgot to add struct hda_gen_spec at the head of codec->spec which the auto-parser assumes silently. Without this record, it may result in memory corruption. This patch adds the missing piece. Cc: <stable@vger.kernel.org> [v3.5+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 08 Oct, 2012 2 commits
-
-
David Henningsson authored
Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
David Henningsson authored
From what I can conclude all GPIO handling was removed in 2009. Remove dead code remnants. Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 22 Sep, 2012 1 commit
-
-
Herton Ronaldo Krzesinski authored
If headphone jack can't detect plug presence, and we have the jack in the jack table, snd_hda_jack_detect will return the plug as always present (as it'll be considered as a phantom jack). The problem is that when this happens, line out pins will always be disabled, resulting in no sound if there are no headphones connected. This was reported as a no sound problem after suspend on http://bugs.launchpad.net/bugs/1052499, since the bug doesn't manifests on first initialization before the phantom jack is added, but on resume we reexecute the initialization code, and via_hp_automute starts reporting HP always present with the jack now on the table. BugLink: https://bugs.launchpad.net/bugs/1052499Signed-off-by:
Herton Ronaldo Krzesinski <herton.krzesinski@canonical.com> Cc: <stable@vger.kernel.org> [v3.6+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 18 Sep, 2012 1 commit
-
-
David Henningsson authored
When the input gain for the internal mic is set to its maximum level, the background noise becomes so high - and any relevant signal clipped - that the setting becomes unusable. It is better to limit the amplification. BugLink: https://bugs.launchpad.net/bugs/1052460Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Cc: <stable@vger.kernel.org> [v3.5+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 30 Aug, 2012 1 commit
-
-
Takashi Iwai authored
CONFIG_SND_HDA_POWER_SAVE is no longer an experimental feature and its behavior can be well controlled via the default value and module parameter. Let's just replace it with the standard CONFIG_PM. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 22 Aug, 2012 1 commit
-
-
Takashi Iwai authored
Instead of calling the jack sync in the init callback of each codec, call it generically at initialization and resume. By calling it at the last of resume sequence, a possible race between the jack sync and the unsol event enablement in the current code will be closed, too. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 09 Aug, 2012 1 commit
-
-
David Henningsson authored
To turn off pin control for the pin was tested, and helped against this issue. BugLink: https://bugs.launchpad.net/bugs/1034779Tested-by:
Chih-Hsyuan Ho <chih.ho@canonical.com> Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 25 Jul, 2012 1 commit
-
-
Takashi Iwai authored
We've got a bug report about the silent output from the headphone on a mobo with VT2021, and spotted out that this was because of the wrong D3 state on the DAC for the headphone output. The bug is triggered by the incomplete check for this DAC in set_widgets_power_state_vt1718S(). It checks only the connectivity of the primary output (0x27) but doesn't consider the path from the headphone pin (0x28). Now this patch fixes the problem by checking both pins for DAC 0x0b. Cc: <stable@vger.kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 03 Jul, 2012 1 commit
-
-
Takashi Iwai authored
Straightforward conversion to the new pm_ops from the legacy suspend/resume ops. Since we change vx222, vx_core and vxpocket have to be converted, too. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 19 May, 2012 1 commit
-
-
Takashi Iwai authored
Like the previous fixes for cache hash accesses, a protection over accesses to the widget connection list array must be provided. Together with this action, remove snd_hda_get_conn_list() which can be always race, and replace it with either snd_hda_get_num_conns() or snd_hda_get_connections() calls. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 08 May, 2012 1 commit
-
-
Takashi Iwai authored
Just code shuffles. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 20 Apr, 2012 2 commits
-
-
Takashi Iwai authored
Add a new helper function to guess the default VREF pin control bits for mic in. This can be used to set the pin control value safely matching with the actual pin capabilities. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
For setting the pin-control values more safely to match with the actual pin capability bits, a copule of new helper functions, snd_hda_set_pin_ctl() and snd_hda_set_pin_ctl_cache(), are introduced. These are simple replacement of the codec verb write with AC_VERB_SET_PIN_WIDGET but do more sanity checks and filter out superfluous pin-control bits if they don't fit with the corresponding pin capabilities. Some codecs are screwed up or ignore the command when such a wrong bit is set. These helpers will avoid such secret errors. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 22 Feb, 2012 2 commits
-
-
Takashi Iwai authored
Added sanity checks in a few places not to assume the pins having the certain amp caps or the input-source being always assigned to a mux. No actual bugs have been triggered by these, but surely better to be a bit more robust. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
The driver may create duplicated mic boost controls when there are multiple mics with the very same type / location, and this leads to the error at actual kcontrol creation. It needs to check the validity of the created control and add a proper index if it's duplicated. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 13 Feb, 2012 1 commit
-
-
Takashi Iwai authored
VT1705 codec has two ADCs where the secondary ADC has no MUX but only a fixed connection to the mic pin. This confused the driver and it tries always overriding the input-source selection by assumption of the existing MUX for the secondary ADC, resulted in resetting the input-source at each time PM (including power-saving) occurs. The fix is simply to check the existence of MUX for secondary ADCs in the initialization code. Tested-by:
Anisse Astier <anisse@astier.eu> Cc: <stable@kernel.org> [v3.1+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 03 Feb, 2012 1 commit
-
-
Takashi Iwai authored
In most cases, the slave strings for vmaster are identical between volumes and switches except for "xxx Volume" and "xxx Switch" suffix. Now snd_hda_add_vmaster() takes the optional suffix argument so that each string can be composed with the given suffix, and we can share the slave name strings in both volume and switch calls nicely. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 02 Feb, 2012 4 commits
-
-
Takashi Iwai authored
Since the dynamic pin power-control and the analog low-current mode may lead to pop-noise, it's safer to set it off as default. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=741128 Cc: <stable@kernel.org> [v3.1+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
VIA codecs have several different power-saving features, and one of them is the analog low-current mode. But it turned out that the ALC mode causes pop-noises at each on/off time on some machines. As a quick workaround, disable the ALC when another power-saving feature, the dynamic pin power-control, is turned off, too, since the dynamic power-control is already exposed as a mixer enum element so that user can turn it on/off freely. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=741128 Cc: <stable@kernel.org> [v3.1+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
The analog low-current mode must be enabled when the no stream is running but the current detection checks it in a wrong way. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=741128 Cc: <stable@kernel.org> [v3.1+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Instead of always writing AC_VERB_SET_POWER_STATE, check the current power-state and don't write again if the value is already set. This may reduce the click noise upon the dynamic power-state change (e.g. in analog-input mixer). Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 10 Jan, 2012 1 commit
-
-
Takashi Iwai authored
Currently the driver checks only the out_mix_path[] for the primary output route for judging whether to create the loopback-mixing control or not. But, there are cases where aamix-routing is available only on headphone or speaker paths but not on the primary output path. So, the driver ignores such cases inappropriately. This patch fixes the check of the loopback-mixing control by testing all mix-routing paths. Cc: <stable@kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 27 Nov, 2011 1 commit
-
-
Takashi Iwai authored
VT1708 has no support for unsolicited events per jack-plug, the driver implements the workq for polling the jack-detection. The mixer element "Jack Detect" was supposed to control this behavior on/off, but this doesn't work properly as is now. The workq is always started and the HP automute is always enabled. This patch fixes the jack-detect control behavior by triggering / stopping the work appropriately at the state change. Also the work checks the internal state to continue scheduling or not. Cc: <stable@kernel.org> [v3.1] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 16 Nov, 2011 3 commits
-
-
Takashi Iwai authored
Manage the tags assigned for unsolicited events dynamically together with the jack-detection routines. Basically this is almost same as what we've done in patch_sigmatel.c. Assign the new tag number for each new unsol event, associate with the given NID and the action type, etc. With this change, now all pins looked over in snd_hda_jack_add_kctls() are actually enabled for detection now even if the pins aren't used for jack-retasking by the driver. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Create kcontrols for pin jack-detections, which work similarly like jack-input layer. Each control will notify when the jack is plugged or unplugged, and also user can read the value at any time via the normal control API. The control elements are created with iface=CARD, so that they won't appear in the mixer apps. So far, only the pins that enabled the jack-detection are registered. For covering all pins, the transition of the common unsol-tag handling would be needed. Stay tuned. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Introduce a table containing the pins and their jack-detection states for avoiding the unnecessary verbs to check the pin status at each time. When the unsol event is enabled via snd_hda_jack_detect_enable(), it automatically adds the given NID to the table. Then the driver supposes that the codec driver will set the dirty flag appropariately when an unsolicited event is invoked for that pin. The behavior for reading other pins that aren't registered in the table doesn't change. Only the pins assigned to the table are cached, so far. In near futre, this table can be extended to use the central place for the unsolicited events of all pins, etc, and eventually include the jack-detect kcontrols that replace the current input-jack stuff. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 02 Nov, 2011 1 commit
-
-
Takashi Iwai authored
Just clean-up what GCC caught. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 31 Oct, 2011 1 commit
-
-
Paul Gortmaker authored
Lots of sound drivers were getting module.h via the implicit presence of it in <linux/device.h> but we are going to clean that up. So fix up those users now. Signed-off-by:
Paul Gortmaker <paul.gortmaker@windriver.com>
-
- 28 Sep, 2011 1 commit
-
-
Takashi Iwai authored
If no analog I/O is defined, skip creating the corresponding PCM stream. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 05 Aug, 2011 1 commit
-
-
Wang Shaoyan authored
sound/pci/hda/patch_via.c:2087: warning: 'dac' may be used uninitialized in this function Signed-off-by:
Wang Shaoyan <wangshaoyan.pt@taobao.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-