From patchwork Wed Apr 8 14:06:57 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Takashi Iwai X-Patchwork-Id: 6180371 Return-Path: X-Original-To: patchwork-alsa-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id CE2EABF4A6 for ; Wed, 8 Apr 2015 14:07:26 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 2AA9820328 for ; Wed, 8 Apr 2015 14:07:21 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.kernel.org (Postfix) with ESMTP id CA88320166 for ; Wed, 8 Apr 2015 14:07:16 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id 2D8F82652E9; Wed, 8 Apr 2015 16:07:15 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,NO_DNS_FOR_FROM, UNPARSEABLE_RELAY autolearn=no version=3.3.1 Received: from alsa0.perex.cz (localhost [IPv6:::1]) by alsa0.perex.cz (Postfix) with ESMTP id CC381265325; Wed, 8 Apr 2015 16:07:06 +0200 (CEST) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 993F9265327; Wed, 8 Apr 2015 16:07:05 +0200 (CEST) Received: from mx2.suse.de (cantor2.suse.de [195.135.220.15]) by alsa0.perex.cz (Postfix) with ESMTP id 1210B265309 for ; Wed, 8 Apr 2015 16:06:59 +0200 (CEST) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 1D432AD54; Wed, 8 Apr 2015 14:06:58 +0000 (UTC) Date: Wed, 08 Apr 2015 16:06:57 +0200 Message-ID: From: Takashi Iwai To: Taylor Smock In-Reply-To: <1428500098.907.2.camel@gmail.com> References: <20150407225642.GN16501@mwanda> <1428455226.1107.2.camel@gmail.com> <1428500098.907.2.camel@gmail.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/24.4 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Cc: alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, Dan Carpenter , joe@perches.com, david.henningsson@canonical.com Subject: Re: [alsa-devel] Audio Jack Out does not work X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP At Wed, 08 Apr 2015 09:34:58 -0400, Taylor Smock wrote: > > On Wed, 2015-04-08 at 10:22 +0200, Takashi Iwai wrote: > > At Tue, 07 Apr 2015 21:07:06 -0400, > > Taylor Smock wrote: > > > > > > Yes; reverting the patch does fix the problem. > > > > What if you just adjust the new volume manually without reverting the > > patch? Run "alsamixer -c0" (or -c1, depending on the setup). Once > > after the setup, run "alsactl store" as root to save as the system > > default volume. > > > > The renamed volume should have been set in full volume as default by > > the driver, and this shouldn't matter whether PA is new or old. If > > the mixer adjustment isn't kept after relogin or reboot, it means > > that > > some user-space stuff overrides it. > > > > In anyway, please give alsa-info.sh output before and after the > > commit. > > > > > > Takashi > > > > > On Wed, 2015-04-08 at 01:56 +0300, Dan Carpenter wrote: > > > > So it's 03ad6a8c93b6df2 ('ALSA: hda - Fix "PCM" name being used > > > > on > one > > > > DAC when there are two DACs') which causes the problem? Have > > > > you > > > > tried > > > > to just revert that patch? > > > > > > > > git show 03ad6a8c93b6df2d65c305b5b5f9474068b45bfb | patch -p1 -R > > > > > > > > regards, > > > > dan carpenter > > > > > > > > > I ran alsamixer -c0. > Headphones did nothing. > Speaker+L0 did change headphone volume. Please elaborate a bit what you're testing and what you expected. When you change "Headphone" volume and mute, it did nothing for which output? "Speaker+LO" changes which output and which not? You seem to have three outputs, one headphone jack on a laptop and one on a docking station, and there is a built-in speaker. Since your codec has only two DACs, two of three must be tied. The bad thing is that BIOS pin configuration doesn't set the headphone pin with the associate number 0x0f but only set it to the dock headphone. Thus the driver assumes that the dock jack is the right headphone and handles the laptop headphone as a sub output. The commit you spotted took this difference more severely, and now you see the unexpected mixer assignment. So, the right "fix" would be rather to correct the pin config. For example, try the patch below. (BTW, what is the product of your laptop model? A more exact name can be filled in the quirk string.) > PCM also seemed to affect headphone volume. This is a mixer element added by alsa-lib softvol plugin, and it's not what the kernel manages. Judging from the description that this PCM volume affects, you are playing without PulseAudio but dmix, I suppose? Takashi diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 7b5c93e0e78c..9d935e5c008a 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c @@ -4429,6 +4429,7 @@ enum { ALC269_FIXUP_QUANTA_MUTE, ALC269_FIXUP_LIFEBOOK, ALC269_FIXUP_LIFEBOOK_EXTMIC, + ALC269_FIXUP_FUJITSU_HP_PIN, ALC269_FIXUP_AMIC, ALC269_FIXUP_DMIC, ALC269VB_FIXUP_AMIC, @@ -4585,6 +4586,13 @@ static const struct hda_fixup alc269_fixups[] = { { } }, }, + [ALC269_FIXUP_FUJITSU_HP_PIN] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x21, 0x0221102f }, /* HP out */ + { } + }, + }, [ALC269_FIXUP_AMIC] = { .type = HDA_FIXUP_PINS, .v.pins = (const struct hda_pintbl[]) { @@ -5105,6 +5113,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ), SND_PCI_QUIRK(0x104d, 0x9099, "Sony VAIO S13", ALC275_FIXUP_SONY_DISABLE_AAMIX), SND_PCI_QUIRK(0x10cf, 0x1475, "Lifebook", ALC269_FIXUP_LIFEBOOK), + SND_PCI_QUIRK(0x10cf, 0x15dc, "Fujitsu", ALC269_FIXUP_FUJITSU_HP_PIN), SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC), SND_PCI_QUIRK(0x144d, 0xc109, "Samsung Ativ book 9 (NP900X3G)", ALC269_FIXUP_INV_DMIC), SND_PCI_QUIRK(0x1458, 0xfa53, "Gigabyte BXBT-2807", ALC283_FIXUP_BXBT2807_MIC),