- 02 9月, 2013 1 次提交
-
-
由 Anssi Hannula 提交于
hdmi_channel_allocation() tries to find a HDMI channel allocation that matches the number channels in the playback stream and contains only speakers that the HDMI sink has reported as available via EDID. If no such allocation is found, 0 (stereo audio) is used. Using CA 0 causes the audio causes the sink to discard everything except the first two channels (front left and front right). However, the sink may be capable of receiving more channels than it has speakers (and then perform downmix or discard the extra channels), in which case it is preferable to use a CA that contains extra channels than to use CA 0 which discards all the non-stereo channels. Additionally, it seems that HBR (HD) passthrough output does not work on Intel HDMI codecs when CA is set to 0 (possibly the codec zeroes channels not present in CA). This happens with all receivers that report a 5.1 speaker mask since a HBR stream is carried on 8 channels to the codec. Add a fallback in the CA selection so that the CA channel count at least matches the stream channel count, even if the stream contains channels not present in the sink speaker descriptor. Thanks to GrimGriefer at OpenELEC forums for discovering that changing the sink speaker mask allowed HBR output. Reported-by: GrimGriefer Reported-by: Ashecrow Reported-by: NFrank Zafka <kafkaesque1978@gmail.com> Reported-by: NPeter Frühberger <fritsch@xbmc.org> Signed-off-by: NAnssi Hannula <anssi.hannula@iki.fi> Cc: <stable@vger.kernel.org> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 27 8月, 2013 5 次提交
-
-
由 Takashi Iwai 提交于
CONFIG_SND_HDA_I915 doesn't have to be user-selectable as this is almost mandatory when i915 driver is available. Let's enable it always when CONFIG_DRM_I915 is set, so that user won't be bothered by useless questions. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Mengdong Lin 提交于
This patch adds two fields to unsolicited response, according to spec HDA040-A: - Device Entry (bit 20:15) - Inactive (bit 2) and show the info in debug message. Signed-off-by: NMengdong Lin <mengdong.lin@intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Mengdong Lin 提交于
This patch is only to allow codec proc file to expose devices list/select info for Haswell codec pins. Since Haswell Gfx driver cannot support DP1.2 MST now, so all pins' device list is empty, meaning no pin is multi-streaming capaple. Signed-off-by: NMengdong Lin <mengdong.lin@intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Mengdong Lin 提交于
If a display codec supports multi-stream transport on the pins, the pin's device list length and device entries will be exposed to codec proc file. Signed-off-by: NMengdong Lin <mengdong.lin@intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Mengdong Lin 提交于
This patch adds flags and routines to get device list & selection info on a pin. To support Display Port 1.2 multi-stream transport (MST) over single DP port, a pin can support multiple devices. Please refer to HD-A spec Document Change Notificaton HDA040-A. A display audio codec can set flag "dp_mst" in its patch, indicating its pins can support MST. But at runtime, a pin may not be multi-streaming capable and report the device list is empty, depending on Gfx driver configuration. Signed-off-by: NMengdong Lin <mengdong.lin@intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 22 8月, 2013 2 次提交
-
-
由 Kailang Yang 提交于
The headphone automute on this machine triggers annoying pop noises. It seems that only the first DAC can be used, the secondary DAC always results in this problem. This patch disables the secondary DAC with a few additional workarounds. Signed-off-by: NKailang Yang <kailang@realtek.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Kailang Yang 提交于
Fixed ALC283 D3 to D0 and D0 to D3 Headphone pop noise. The previous fix [c5177c86: ALSA: hda - Fix the noise after suspend on ALC283 codec] doesn't work sufficiently for some laptops. Signed-off-by: NKailang Yang <kailang@realtek.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 19 8月, 2013 2 次提交
-
-
由 David Henningsson 提交于
If compiled without CONFIG_SND_HDA_I915, the audio driver cannot request power well. However, if the power well is on for other reasons, maybe audio can still work. Therefore, do not skip the card completely if compiled without CONFIG_SND_HDA_I915. Signed-off-by: NDavid Henningsson <david.henningsson@canonical.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 David Henningsson 提交于
The higher mic boosts (on internal mic) are so noisy they're unusable in practice. BugLink: https://bugs.launchpad.net/bugs/1213820Signed-off-by: NDavid Henningsson <david.henningsson@canonical.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 16 8月, 2013 3 次提交
-
-
由 David Henningsson 提交于
This just cleans up the table, no functional changes. Signed-off-by: NDavid Henningsson <david.henningsson@canonical.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 David Henningsson 提交于
The internal mic boost is so noisy on boosts 2 and 3 so they are unusable in practice. BugLink: https://bugs.launchpad.net/bugs/1213055Signed-off-by: NDavid Henningsson <david.henningsson@canonical.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Gateway LT27 needs a fixup for the inverted digital mic. Reported-by: N"Nathanael D. Noblet" <nathanael@gnat.ca> Cc: <stable@vger.kernel.org> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 13 8月, 2013 2 次提交
-
-
由 Takashi Iwai 提交于
The current generic parser code assumes that always a pin widget controls the mute for an output blindly although it might be a different widget in the middle. Instead of the fixed assumption, check each parsed path and just pick up the right widget that has been already defined as a mute control. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
The auto-mute using the amp currently works only for a single amp on a pin. Make it working also with HDA_CTL_BIND_MUTE type, too. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 12 8月, 2013 2 次提交
-
-
由 Takashi Iwai 提交于
We've added a fake mute control (setting the amp volume to zero) for CX5051 at commit [3868137e: ALSA: hda - Add a fake mute feature], but this feature was overlooked in the generic parser implementation. Now the driver lacks of mute controls on these codecs. The fix is just to check both AC_AMPCAP_MUTE and AC_AMPCAP_MIN_MUTE bits in each place checking the amp capabilities. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=59001 Cc: <stable@vger.kernel.org> [v3.9+] Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Correct the pins for a line-in and a headphone on LG LW25 laptop with ALC880 codec. Other pins seem fine. Reported-and-tested-by: NJoonas Saarinen <jonskunator@gmail.com> Cc: <stable@vger.kernel.org> [v3.9+] Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 05 8月, 2013 1 次提交
-
-
由 Chih-Chung Chang 提交于
The snd_hda_jack_set_gating_jack() call didn't work when auto_{mute,mic} is suppressed because (1) am_entry is not filled with nid of the mic pin. (2) The jacks are not created (by snd_hda_jack_detect_enable_callback) before the snd_hda_jack_set_gating_jack call. Now we use the first input pin nid directly, and create the jack if it doesn't exist yet. Signed-off-by: NChih-Chung Chang <chihchung@chromium.org> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 02 8月, 2013 1 次提交
-
-
由 Takashi Iwai 提交于
A fixup for Apple Mac Mini was lost during the adaption to the generic parser because the fallback for the generic ID 8384:7680 was dropped, and it resulted in the silence output (and maybe other problems). Unfortunately, just adding the missing subsystem ID wasn't enough, in this case. The subsystem ID of this machine is 0000:0100 (what Apple thought...?), and since snd_hda_pick_fixup() doesn't take the vendor id zero into account, the driver ignored this entry. Now it's fixed to regard the vendor id zero as a valid value. Reported-and-tested-by: NLinus Torvalds <torvalds@linux-foundation.org> Cc: <stable@vger.kernel.org> [v3.9+] Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 29 7月, 2013 5 次提交
-
-
由 Takashi Iwai 提交于
VAIO-Z laptops need to use the specific DAC for the speaker output by some unknown reason although the codec itself supports the flexible connection. So we implemented a workaround by a new flag, no_primary_hp, for assigning the speaker pin first. This worked until 3.8 kernel, but it got broken because the driver learned for a better multi-io pin mapping, and not it can assign two mic pins for multi-io. Since the multi-io requires to be the primary output, the hp and two mic pins are assigned in prior to the speaker in the end. Although the machine has two mic pins, one of them is used as a noise- canceling headphone, thus it's no real retaskable mic jack. Thus, at best, we can disable the multi-io assignment and make the parser behavior back to the state before the multi-io. This patch adds again a new flag, no_multi_io, to indicate that the device has no multi-io capability, and set it in the fixup for VAIO-Z. The no_multi_io flag itself can be used generically, added via a helper line, too. Reported-by: NTormen <my.nl.abos@gmail.com> Reported-by: NAdam Williamson <awilliam@redhat.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
The current fixup for dell-bios model with STAC9228 codec contains the override of pin 0x0c for analog mic. But this is actually just adding a bogus pin and confuses the parser. Better to remove it for the auto-mic switching. Meanwhile, for a possible regression, keep the old configuration as model=dell-bios-amic, so that people can test it again quickly. Tested on Dell 1420n laptop. Reported-and-tested-by: NEric Shattow <lucent@gmail.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Wang Xingchao 提交于
With runtime power save feature enabled, Headphone hotplug event will not be detected while controller/codec in D3. HDA has feature WAKEEN to let codec wake up system if controller is in D3 or system in S3.(HDA Spec 4.5.9.2/3). Codec can send out INT or wake up controller depending on whether CIE or GIE enabled.(Figure 4, Interupt structure). The controller must be in RESET mode after enter runtime-suspend, otherwise it will not be waken up even if codec send out wake-up event. And STATESTS will be cleared after controller brought out of RESET mode. This patch only enable WAKEEN for runtime-suspend(Controller D3) mode, not for system S3 mode. with tool "evtest", Headphone hotplug events could be cought and reported successfully. [fixed an unused variable warning by tiwai] Signed-off-by: NWang Xingchao <xingchao.wang@linux.intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Wang Xingchao 提交于
With jackpoll_interval != 0, it's used to poll jack event periodically in a delayed work. if it's 0, give the caller chance to probe jack status but will not restart the delayed work. In the next patch which enable WAKEEN feature, HDA controller was able to wake up system when it's in D3, it's useful to detect Jack hotplug event and notify userspace. By default the jackpoll_interval=0, this patch let jack poll once without starting the delayed work. Signed-off-by: NWang Xingchao <xingchao.wang@linux.intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Wang Xingchao 提交于
Clearing jackpoll_interval before calling cancel_delayed_work_sync(), otherwise the work will be triggered again and cause impact in hda_jackpoll_work(). The next patch will poll jack once even with jackpoll_interval=0. Signed-off-by: NWang Xingchao <xingchao.wang@linux.intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 24 7月, 2013 3 次提交
-
-
由 Wang Xingchao 提交于
Register STATESTS is 16-bit length, use correct API for read/write. Signed-off-by: NWang Xingchao <xingchao.wang@linux.intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Kailang Yang 提交于
When the power state of ALC283 codec goes to D3, it gives a noise via headphone output. This is because the driver tries to clear all pins via snd_hda_shutup_pins(). Setting the mic pin to zero triggers such a noise. Define a new shutup call specific to this codec and control the pins there more precisely. Also, add the power-save enable/disable sequences in the resume and the new shutup calls. Signed-off-by: NKailang Yang <kailang@realtek.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Instead of calling snd_hda_shutup_pins() unconditionally, allow it be called in spec->shutup callback. In this way, we can avoid calling this function if it causes a problem like we see in the next patch following this. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 21 7月, 2013 2 次提交
-
-
由 Jingoo Han 提交于
The usage of strict_strto*() is not preferred, because strict_strto*() is obsolete. Thus, kstrto*() should be used. Signed-off-by: NJingoo Han <jg1.han@samsung.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
snd_hda_jack_detect() function returns a boolean value for a jack plugged in or not, but it also returns always true when the corresponding pin is phantom (i.e. fixed). This is OK in most cases, but it makes the generic parser misbehaving about the auto-mute or auto-mic switching, e.g. when one of headphone pins is a fixed. Namely, the driver decides whether to mute the speaker or not, just depending on the headphone plug state: if one of the headphone jacks is seen as active, then the speaker is muted. Thus this will result always in the muted speaker output. So, the problem is the function returns a boolean, after all, although we need to think of "phantom" jack. Now a new function, snd_hda_jack_detect_state() is introduced to return these tristates. The generic parser uses this function for checking the headphone or mic jack states. Meanwhile, the behavior of snd_hda_jack_detect() is kept as is, for keeping compatibility in other driver codes. Acked-by: NDavid Henningsson <david.henningsson@canonical.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 19 7月, 2013 2 次提交
-
-
由 Takashi Iwai 提交于
The quirk for Dell laptops with STAC9228 overrides the pin default config of NID 0x0f to the value with AC_DEFCFG_MISC_NO_PRESENCE bit on. I'm not quite sure why this was done so, but can guess that this was introduced for avoiding this to be muted by another headphone plug. Now, after transition to the generic parser, this workaround rather causes a problem (notably as unexpected speaker mutes) because the pin is seen as if it's always plugged in. Since the generic parser can handle multiple headphone plugging gracefully, we can get rid of this override now. Reported-and-tested-by: NEric Shattow <lucent@gmail.com> Cc: <stable@vger.kernel.org> [v3.9+] Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
The EAPD GPIO is dynamically turned on/off for some machines with Sigmatel codecs, but this didn't work as expected, and it resulted in spontaneous lost of speaker outputs per HP plugging or power-saving. This patch fixes the bug by simply including spec->eapd_mask into spec->gpio_mask and spec->gpio_data bits. Reported-and-tested-by: NEric Shattow <lucent@gmail.com> Cc: <stable@vger.kernel.org> [v3.9+] Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 16 7月, 2013 2 次提交
-
-
由 David Henningsson 提交于
This Conexant codec has a single jack that can be used as either headphone or mic (but not headset). The existing hp_mic functionality does not apply here, because the mic and the HP are on separate pins. Hence make a lighter version of what has been earlier done for Realtek codecs. BugLink: https://bugs.launchpad.net/bugs/1198030Tested-by: NFranz Hsieh <franz.hsieh@canonical.com> Signed-off-by: NDavid Henningsson <david.henningsson@canonical.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Aaron Plattner 提交于
Vendor ID 0x10de0060 is used by a yet-to-be-named GPU chip. Reviewed-by: NAndy Ritger <aritger@nvidia.com> Signed-off-by: NAaron Plattner <aplattner@nvidia.com> Cc: <stable@vger.kernel.org> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 08 7月, 2013 1 次提交
-
-
由 Takashi Iwai 提交于
ALC5505 DSP is enabled even though we don't use the features yet at all. This results in the unnecessarily high power consumption, more than 100mV higher. Until we implement the DSP support, better to bypass DSP for saving more power. Reported-by: NMengdong Lin <mengdong.lin@intel.com> [Patch modified by Mengdong to cal alc5505_dsp_init() with extra acl5505_dsp_halt().] Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 05 7月, 2013 6 次提交
-
-
由 Takashi Iwai 提交于
Finally all the static quirks in patch_analog.c are reduced by this patch. As machines with AD1986A codec are all old and often their BIOS are buggy, we need to keep at least a few static pin conifgs. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Most of ASUS laptops and Lenovo N100 provide proper BIOS pin-configs. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
The BIOS provides good pin-configurations, so we can drop the static quirk now. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
BIOS on Samsung R55, M55 and M50 provide the proper pin-configs, so we can remove the corresponding static quirk entries gracefully. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Just need to override some pin-configurations. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
... to a fixup entry. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-