[alsa-devel] No surround sound with ALC892 on B150M Pro4/D3 - fixed with hdajackretask
Takashi Iwai
tiwai at suse.de
Thu Oct 20 12:18:16 CEST 2016
On Tue, 18 Oct 2016 00:50:49 +0200,
Benjamin Valentin wrote:
>
> Hi,
>
> I had a problem with mainboard insofar that it would let me select 5.1
> surround output in my sound settings, but sound would only play from
> the two front speakers, all other channels remained silent.
>
> Some fiddeling with hdajackretask would generate a firmware where two
> pins that were previously used for rear and LFE are now disabled and
> two previously disabled pins are now configured as rear and LFE - I
> left the other pins to their default setting as much as I could.
> The generated firmware is attached below.
>
> I'd like to help that this will work out of the box in the future, is
> there any further information I can provide you with?
>
> The board is an Asrock B150M Pro4/D3 [1] with the ALC892 HDA Codec.
> alsa-info from before the procedure can be found at [2].
>
> I'm running Linux 4.8/alsa 1.1.2 on Ubuntu 16.10
>
> The generated /lib/firmware/hda-jack-retask.fw is
>
> [codec]
> 0x10ec0892 0x18498892 0
>
> [pincfg]
> 0x11 0x411111f0
> 0x12 0x411111f0
> 0x14 0x01014010
> 0x15 0x40f000f0
> 0x16 0x40f000f0
> 0x17 0x411111f0
> 0x18 0x01014011
> 0x19 0x02a19950
> 0x1a 0x01014012
> 0x1b 0x02214120
> 0x1c 0x411111f0
> 0x1d 0x4005e601
> 0x1e 0x01452130
> 0x1f 0x411111f0
>
> [model]
> auto
>
> regards,
> Benjamin
>
> [1] http://www.asrock.com/mb/Intel/B150M%20Pro4D3/?cat=Specifications
> [2] http://www.alsa-project.org/db/?f=8e7b0788cde8967048959d50a57b0bb214ddc7fb
Does the patch below work for you?
thanks,
Takashi
---
From: Takashi Iwai <tiwai at suse.de>
Subject: [PATCH] ALSA: hda - Fix surround output pins for ASRock B150M mobo
ASRock B150M Pro4/D3 mobo with ALC892 codec doesn't seem to provide
proper pins for the surround outputs, hence we need to specify the
pincfgs manually with a couple of other corrections.
Reported-by: Benjamin Valentin <benpicco at googlemail.com>
Cc: <stable at vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai at suse.de>
---
sound/pci/hda/patch_realtek.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index b582d57fe184..284315555229 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -6625,6 +6625,7 @@ enum {
ALC891_FIXUP_HEADSET_MODE,
ALC891_FIXUP_DELL_MIC_NO_PRESENCE,
ALC662_FIXUP_ACER_VERITON,
+ ALC892_FIXUP_ASROCK_MOBO,
};
static const struct hda_fixup alc662_fixups[] = {
@@ -6901,6 +6902,16 @@ static const struct hda_fixup alc662_fixups[] = {
{ }
}
},
+ [ALC892_FIXUP_ASROCK_MOBO] = {
+ .type = HDA_FIXUP_PINS,
+ .v.pins = (const struct hda_pintbl[]) {
+ { 0x15, 0x40f000f0 }, /* disabled */
+ { 0x16, 0x40f000f0 }, /* disabled */
+ { 0x18, 0x01014011 }, /* LO */
+ { 0x18, 0x01014012 }, /* LO */
+ { }
+ }
+ },
};
static const struct snd_pci_quirk alc662_fixup_tbl[] = {
@@ -6938,6 +6949,7 @@ static const struct snd_pci_quirk alc662_fixup_tbl[] = {
SND_PCI_QUIRK(0x144d, 0xc051, "Samsung R720", ALC662_FIXUP_IDEAPAD),
SND_PCI_QUIRK(0x17aa, 0x38af, "Lenovo Ideapad Y550P", ALC662_FIXUP_IDEAPAD),
SND_PCI_QUIRK(0x17aa, 0x3a0d, "Lenovo Ideapad Y550", ALC662_FIXUP_IDEAPAD),
+ SND_PCI_QUIRK(0x1849, 0x5892, "ASRock B150M", ALC892_FIXUP_ASROCK_MOBO),
SND_PCI_QUIRK(0x19da, 0xa130, "Zotac Z68", ALC662_FIXUP_ZOTAC_Z68),
SND_PCI_QUIRK(0x1b0a, 0x01b8, "ACER Veriton", ALC662_FIXUP_ACER_VERITON),
SND_PCI_QUIRK(0x1b35, 0x2206, "CZC P10T", ALC662_FIXUP_CZC_P10T),
--
2.10.1
More information about the Alsa-devel
mailing list