summaryrefslogtreecommitdiff
path: root/sound/pci/hda/patch_realtek.c
AgeCommit message (Collapse)Author
2015-09-24ALSA: hda - Disable power_save_node for ThinkpadsTakashi Iwai
Lenovo Thinkpads with recent Realtek codecs seem suffering from click noises at power transition since the introduction of widget power saving in 4.1 kernel. Although this might be solved by some delays in appropriate points, as a quick workaround, just disable the power_save_node feature for now. The gain it gives is relatively small, and this makes the situation back to pre 4.1 time. This patch ended up with a bit more code changes than usual because the existing fixup for Thinkpads is highly chained. Instead of adding yet another chain, combine a few of them into a single fixup entry, as a gratis cleanup. Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=943982 Cc: <stable@vger.kernel.org> # v4.1+ Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-09-05ALSA: hda - Fix white noise on Dell M3800Niranjan Sivakumar
The M3800 is very minor workstation variant of the XPS 15 which has already been patched for this issue. I figured it's probably more important for this version of the laptop to be patched than the regular XPS as Dell sells is pre-configured with Ubuntu to be used as a Linux workstation. I have tested the patch on my the hardware on Linux 4.2.0. Signed-off-by: Niranjan Sivakumar <ns253@cornell.edu> Cc: <stable@vger.kernel.org> # v4.1+ Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-09-05ALSA: hda - Use ALC880_FIXUP_FUJITSU for FSC Amilo M1437Takashi Iwai
It turned out that the machine has a bass speaker, so take a correct fixup entry. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102501 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-09-05ALSA: hda - Enable headphone jack detect on old Fujitsu laptopsTakashi Iwai
According to the bug report, FSC Amilo laptops with ALC880 can detect the headphone jack but currently the driver disables it. It's partly intentionally, as non-working jack detect was reported in the past. Let's enable now. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102501 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-09-04ALSA: hda - Add some FIXUP quirks for white noise on Dell laptop.Woodrow Shen
Dell laptop has a series model to use the same codec but different subsystem ID. At the same time they happens the white noise by login screen and headphone; for fixing them together, I only can add these IDs to FIXUP function ALC292_FIXUP_DISABLE_AAMIX, then try to solve such the similar issues. Codec: Realtek ALC3235 Vendor Id: 0x10ec0293 Subsystem Id: 0x102806dd Subsystem Id: 0x102806df Subsystem Id: 0x102806e0 Cc: <stable@vger.kernel.org> BugLink: https://bugs.launchpad.net/bugs/1492132 Signed-off-by: Woodrow Shen <woodrow.shen@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-08-21Merge branch 'for-linus' into for-nextTakashi Iwai
2015-08-19ALSA: hda - Add dock support for Thinkpad W541 (17aa:2211)Rick Sherman
Tested with W541 and Ultra Dock 170w Signed-off-by: Rick Sherman <rick@shermdog.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-08-13ALSA: hda - Fix the white noise on Dell laptopWoodrow Shen
Dell laptop causes the white noise by login screen and headphone, and the fixup function ALC292_FIXUP_DISABLE_AAMIX can eliminate this noise. Codec: Realtek ALC3235 Vendor Id: 0x10ec0293 Subsystem Id: 0x102806db Cc: <stable@vger.kernel.org> BugLink: https://bugs.launchpad.net/bugs/1484334 Signed-off-by: Woodrow Shen <woodrow.shen@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-08-11Merge branch 'for-linus' into for-nextTakashi Iwai
2015-08-05ALSA: hda - yet another fix for Dell headset mic with ALC3266Takashi Iwai
It turned out that there are three variants of pin config values of NID 0x17 on Dell laptops with ALC3266 (alias of ALC298): 0x90170110, 0x90170140 and 0x90170150. The first two have been already covered by commits 703867e2f252 and 977e627684df, so this commit adds the missing last entry. While we're at it, rearrange the three entries in the order of pincfg values. Reported-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-08-05ALSA: hda - one Dell machine needs the headphone white noise fixupHui Wang
The fixup ALC292_FIXUP_DISABLE_AAMIX can fix the white noise of the headphone on this Dell machine. Cc: <stable@vger.kernel.org> Signed-off-by: Hui Wang <hui.wang@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-08-05ALSA: hda - Fix Dell laptop for internal mic/headset micWoodrow Shen
The new Dell laptop with ALC3266 can't use internal microphone to record. Also, the 3 ring headset mic doesn't work on it. For src of patch_realtek.c, only the pin cfg of Nid 0x17 is different, so the Nid 0x17 is added into pin quirk, and others are defined to macro ALC298_STANDARD_PINS in common use. Codec: Realtek ALC3266 Vendor Id: 0x10ec0298 Subsystem Id: 0x102806e5 BugLink: https://bugs.launchpad.net/bugs/1481575 Signed-off-by: Woodrow Shen <woodrow.shen@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-08-03ALSA: hda - remove no physical connection pins from pin_quirk tableHui Wang
To cleanup the pin_quirk table: - rewrite the pin_config_match(), comparing all pins on the machine with the corresponding pins in the quirk table. - remove all 0x4xxxxxxx pin configurations from pin_quirk table - after removing the 0x4xxxxxxx pin configurations, some pin tables are exactly same, so removing the redudant pin tables. Signed-off-by: Hui Wang <hui.wang@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-07-30ALSA: hda - Fix MacBook Pro 5,2 quirkTakashi Iwai
MacBook Pro 5,2 with ALC889 codec had already a fixup entry, but this seems not working correctly, a fix for pin NID 0x15 is needed in addition. It's equivalent with the fixup for MacBook Air 1,1, so use this instead. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102131 Reported-and-tested-by: Jeffery Miller <jefferym@gmail.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-07-29ALSA: hda - Apply a fixup to Dell Vostro 5480Takashi Iwai
Dell Vostro 5480 (1028:069a) needs the very same quirk used for Vostro 5470 model to make bass speakers properly working. Reported-and-tested-by: Paulo Roberto de Oliveira Castro <p.oliveira.castro@gmail.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-07-27ALSA: hda - Add pin quirk for the headset mic jack detection on Dell laptopWoodrow Shen
The new Dell laptop with codec 256 can't detect headset mic when headset was inserted on the machine. From alsa-info, we check init_pin_configs and need to define the new register value for pin 0x1d & 0x1e because the original macro ALC256_STANDARD_PINS can't match pin definition. Also, the macro ALC256_STANDARD_PINS is simplified by removing them. This makes headset mic works on laptop. Codec: Realtek ALC256 Vendor Id: 0x10ec0256 Subsystem Id: 0x102806f2 BugLink: https://bugs.launchpad.net/bugs/1478497 Signed-off-by: Woodrow Shen <woodrow.shen@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-07-25ALSA: hda - Fix the headset mic that will not work on Dell desktop machineWoodrow Shen
When the headset was plugged in the Dell desktop, the mic of headset can't be detected and workable. According to the alsa-info, we found the differece between alsa and init_pin_configs on the machine, so we need to add the pin configs to make headset work. Codec: Realtek ALC3234 Vendor Id: 0x10ec0255 Subsystem Id: 0x102806bb BugLink: https://bugs.launchpad.net/bugs/1477900 Signed-off-by: Woodrow Shen <woodrow.shen@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-07-22ALSA: hda - Add headset mic pin quirk for a Dell deviceDavid Henningsson
Without this patch, the headset mic will not work on this machine. BugLink: https://bugs.launchpad.net/bugs/1476987 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-07-22ALSA: hda - remove one pin from ALC292_STANDARD_PINSHui Wang
One more Dell laptop with alc293 codec needs ALC293_FIXUP_DELL1_MIC_NO_PRESENCE, but the pin 0x1e does not match the corresponding one in the ALC292_STANDARD_PINS. To use this macro for this machine, we need to remove pin 0x1e from it. BugLink: https://bugs.launchpad.net/bugs/1476888 Cc: <stable@vger.kernel.org> Signed-off-by: Hui Wang <hui.wang@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-07-19ALSA: hda - Add headset mic support for Acer Aspire V5-573GMateusz Sylwestrzak
Acer Aspire V5 with the ALC282 codec is given the wrong value for the 0x19 PIN by the laptop's BIOS. Overriding it with the correct value adds support for the headset microphone which would not otherwise be visible in the system. The fix is based on commit 7819717b1134 with a similar quirk for Acer Aspire with the ALC269 codec. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=96201 Cc: <stable@vger.kernel.org> Signed-off-by: Mateusz Sylwestrzak <matisec7@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-07-16ALSA: hda/realtek: Enable HP amp and mute LED on HP Folio 9480m [v3]Keith Packard
This laptop needs GPIO4 pulled high to enable the headphone amplifier, and has a mute LED on GPIO3. I modelled the patch on the existing GPIO4 code which pulls the line low for the same purpose; this time, the HP amp line is pulled high. v2: Disable the headphone amplifier when no headphone is connected. Don't disable power savings to preserve the LED state. v3: Remove headset-specific hooks and code; this is just a headphone. Signed-off-by: Keith Packard <keithp@keithp.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-29ALSA: hda - Add a fixup for Dell E7450Takashi Iwai
Dell E7450 [0128:062e] needs the same quirk as other E7xx models. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=100571 Cc: <stable@vger.kernel.org> # v4.1 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-29ALSA: hda - Fix the dock headphone output on Fujitsu Lifebook E780Takashi Iwai
Fujitsu Lifebook E780 sets the sequence number 0x0f to only only of the two headphones, thus the driver tries to assign another as the line-out, and this results in the inconsistent mapping between the created jack ctl and the actual I/O. Due to this, PulseAudio doesn't handle it properly and gets the silent output. The fix is to ignore the non-HP sequencer checks. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=99681 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-27ALSA: hda - Add headset support to Acer Aspire V5Takashi Iwai
Acer Aspire V5 with ALC282 codec needs the similar quirk like Dell laptops to support the headset mic. The headset mic pin is 0x19 and it's not exposed by BIOS, thus we need to fix the pincfg as well. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=96201 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-26ALSA: hda - restore the MIC FIXUP for some Dell machinesHui Wang
Those FIXUPs were applied to the machines through pin quirks, but recently the PCI_QUIRK makes them can't apply to the machines. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=99851 Signed-off-by: Hui Wang <hui.wang@canonical.com> Cc: <stable@vger.kernel.org> # v4.1 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-25ALSA: hda - Fix Dock Headphone on Thinkpad X250 seen as a Line OutDavid Henningsson
Thinkpad X250, when attached to a dock, has two headphone outs but no line out. Make sure we don't try to turn this into one headphone and one line out (since that disables the headphone amp on the dock). Alsa-info at http://www.alsa-project.org/db/?f=36f8764e1d782397928feec715d0ef90dfddd4c1 Cc: stable@vger.kernel.org Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-16Merge branch 'for-linus' into for-nextTakashi Iwai
Yet another non-trivial conflicts for HDA legacy stuff. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-15ALSA: hda - Fix noisy outputs on Dell XPS13 (2015 model)Takashi Iwai
The new Dell XPS13 also requires the similar quirk for fixing the noisy outputs. (But, as the codec was changed, now the fixup for Latitude is used instead.) Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=99851 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-15Merge branch 'for-linus' into for-nextTakashi Iwai
Conflicts: sound/pci/hda/patch_realtek.c Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-15ALSA: hda - Fix audio crackles on Dell Latitude E7x40Takashi Iwai
We still got a report that the audio crackles and noises occur with the recent 4.1 kernels on Dell machines. These machines seem to need similar workarounds that have been applied to the recent Dell XPS 13 models. Since the codec of these machines (Dell Latitute E7240 and E7440) is different from XPS 13's one, we need a new fixup entry. Also, it was confirmed that the previous workaround to disable the widget power-save (commit [219f47e4f964: ALSA: hda - Disable widget power-saving for ALC292 & co]) is no longer needed after this fix. So, this patch includes the partial revert of the commit, too. Reported-and-tested-by: Mihai Donțu <mihai.dontu@gmail.com> Tested-by: Jonathan McDowell <noodles@earth.li> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-09Merge branch 'for-linus' into for-nextTakashi Iwai
Resolve the non-trivial conflict due to the hdac regmap API changes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-06-02ALSA: hda/realtek - Add a fixup for another Acer Aspire 9420Takashi Iwai
Acer Aspire 9420 with ALC883 (1025:0107) needs the fixup for EAPD to make the sound working like other Aspire models. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=94111 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-29ALSA: hda/realtek - Suooprt Dell headset mode for ALC256Kailang Yang
Dell SSID 0x0706 support headset mode. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-29ALSA: hda - Set patch_ops before calling auto-parserTakashi Iwai
... so that the parser code can overwrite some optional ops. For Realtek and others, it can be set solely in the spec allocator, so it results in a good code cleanup, too. With this change, we can finally remove the local stream_pm setup and rely on the generic parser's automatic setting. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-29Merge branch 'for-linus' into for-nextTakashi Iwai
Merge back the latest HD-audio stuff for further development.
2015-05-29ALSA: hda - Fix lost sound due to stream_pm ops cleanupTakashi Iwai
The commit [49fb18972581: ALSA: hda - Set stream_pm ops automatically by generic parser] resulted in regressions on some Realtek and VIA codecs because these drivers set patch_ops after calling the generic parser, thus stream_pm got cleared to NULL again. I haven't noticed since I tested with IDT codec. Restore (partial revert) the stream_pm ops for them to fix the regression. Fixes: 49fb18972581 ('ALSA: hda - Set stream_pm ops automatically by generic parser') Reported-by: Jeremiah Mahler <jmmahler@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-28ALSA: hda - Disable Headphone Mic boost for ALC662David Henningsson
When headphone mic boost is above zero, some 10 - 20 second delay might occur before the headphone mic is operational. Therefore disable the headphone mic boost control (recording gain is sufficient even without it). (Note: this patch is not about the headset mic, it's about the less common mic-in only mode.) BugLink: https://bugs.launchpad.net/bugs/1454235 Suggested-by: Kailang Yang <kailang@realtek.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-27ALSA: hda - Set stream_pm ops automatically by generic parserTakashi Iwai
This allows user to test power_save_node feature via sysfs or patch firmware even on the codecs that don't specify it. It'll also save a few lines. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-26ALSA: hda/realtek - Add ALC256 alias name for DellKailang Yang
Add ALC3246 for Dell platform. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-20ALSA: hda - Disable widget power-saving for ALC292 & coTakashi Iwai
We've got reports that ALC3226 (a Dell variant of ALC292) gives click noises at transition from D3 to D0 when the widget power-saving is enabled. Further debugging session showed that avoiding it isn't trivial, unfortunately, since paths are basically activated dynamically while the pins have been already enabled. This patch disables the widget power-saving for such codecs. Reported-by: Jonathan McDowell <noodles@earth.li> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-19ALSA: hda - Add headset-mode* model options for ALC269 & coTakashi Iwai
Modern machines tend to have only one headset jack nowadays, and they often need these quirks. Let's allow them applicable via model option for ease of debugging. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-18ALSA: hda/realtek - Support Dell headset mode for ALC298Kailang Yang
Dell create new platform with ALC298 codec. This patch will enable headset mode for ALC298/ALC3266 platform. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-18ALSA: hda/realtek - ALC292 dock fix for Thinkpad L450Ansgar Hegerfeld
The Lenovo ThinkPad L450 requires the ALC292_FIXUP_TPT440_DOCK fix in order to get sound output on the docking stations audio port. This patch was tested using a ThinkPad L450 (20DSS00B00) using kernel 4.0.3 and a ThinkPad Pro Dock. Signed-off-by: Ansgar Hegerfeld <linux@hegerfeld.org> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-18ALSA: hda - Fix headset mic and mic-in for a Dell desktopDavid Henningsson
ALC662 does not need any special verbs to change the jack functionality, and enables mic in through the headphone jack mode by changing the direction of the headphone pin node. BugLink: https://bugs.launchpad.net/bugs/1454235 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-12ALSA: hda/realtek - Support headset mode for ALC298Kailang Yang
Support headset mode for ALC298 platform. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-11ALSA: hda - Add headset mic quirk for Dell Inspiron 5548David Henningsson
This enables the headset microphone on Dell Inspiron 5548, or at least some variants of it. Cc: stable@vger.kernel.org BugLink: https://bugs.launchpad.net/bugs/1452175 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-05ALSA: hda/realtek - Add ALC298 alias name for DellKailang Yang
Add ALC3266 for Dell platform. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-04ALSA: hda/realtek - Fix typo for ALC286/ALC288Kailang Yang
Delete more one break for ALC286/ALC288. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-05-01ALSA: hda - Add headphone quirk for Lifebook E752Takashi Iwai
Fujitsu Lifebook E752 laptop needs a similar quirk done for Lifebook T731. Otherwise the headphone is always muted. Reported-and-tested-by: Christian Weber <we_chris@hotmail.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-04-27ALSA: hda - Fix click noise at start on Dell XPS13Takashi Iwai
Dell XPS13 produces a click noise at boot up, and Gabriele spotted out that it's triggered by the initial pin control of the mic (NID 0x19). This has to be set to Hi-Z Vref while the driver initializes to Vref 80% as a normal mic. This patch fixes the generic parser code not to override the target vref if it has been already set by the driver, and adds a proper initialization of the target vref for this pin in the Realtek driver side. Reported-and-tested-by: Gabriele Mazzotta <gabriele.mzt@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>