Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Julian Sikorski <belegdol@gmail.com>
To: alsa-devel@alsa-project.org
Subject: Re: Clevo P170HM / Sager NP8170 audio
Date: Thu, 24 Nov 2011 11:03:08 +0100	[thread overview]
Message-ID: <jal4os$vs9$1@dough.gmane.org> (raw)
In-Reply-To: <jal29f$6dt$1@dough.gmane.org>

[-- Attachment #1: Type: text/plain, Size: 2126 bytes --]

W dniu 24.11.2011 10:20, Julian Sikorski pisze:
> W dniu 20.08.2011 09:33, Andrew Mahone pisze:
>> This laptop is detected as ALC892 audio (and by the codec ID this
>> seems to be valid), but none of the configurations for it quite match
>> this device. I've been working on documenting the connections with HDA
>> Analyzer.
>>
>> alsa-info output:
>> http://www.alsa-project.org/db/?f=b86e4c6447867fbd129a36d8a63e2f5caa836c52
>>
>> The laptop has built-in 5.1, and 5.1 or 7.1 output via jacks.
>>
>> DAC NIDs:
>> 0x02 front
>> 0x03 rear
>> 0x04 clfe
>> 0x05 side
>>
>> internal mixers:
>> 0x0c front
>> 0x0d rear
>> 0x0e clfe
>> 0x0f side
>>
>> internal speaker pins:
>> 0x14 front
>> 0x15 "rear" (front of laptop)
>> 0x16 clfe
>>
>> external ports:
>> fixed route:
>> 0x17 side
>>
>> can select any output:
>> 0x18 mic / output
>> 0x1a line-in / output
>> 0x1b headphone
>>
>> I've been experimenting with patch_realtek.c to add the extra DAC NID,
>> and have had some success with a 6-channel mode for the built-in
>> speakers and an 8-channel mode that mutes all internal speakers and
>> sets the jacks up for output. I still need to manually connect pins
>> 0x18, 0x1a, 0x1b to the correct internal mixers for 7.1 to work, and
>> headphone plugin does not mute internal speakers in 5.1 mode. I have
>> not added a plain stereo mode for internal speakers, although it
>> appears that i can probably configure the codec to mix the front
>> channels to center and LFE.
>>
>> Are there any suggestions for what to do next? My current state as a
>> patch against the linux-3.0.y repository is at
>> http://pastie.org/2400649
>>
> I tried this patch (attached a version ported to 3.1.x kernel) with
> P150HM and I was still unable to get sound out of the subwoofer when on
> 6 channel mode, could nonexisting rear be interfering?

I tried a similar patch but also no luck there... Any ideas why the
subwoofer might not be working? Is there a way to somehow eavesdrop the
windows driver?

> As Andrew said, 8 channel mode works once you manually unmute and
> reattach mixers using hda-analyzer.
> 
> Regards,
> Julian
> 
> 
> 


[-- Attachment #2: clevo-p150hm-quirk.patch --]
[-- Type: text/x-patch, Size: 3114 bytes --]

--- vanilla-3.1/sound/pci/hda/alc662_quirks.c	2011-10-24 09:10:05.000000000 +0200
+++ linux-3.1.x86_64/sound/pci/hda/alc662_quirks.c	2011-11-24 08:29:00.443842837 +0100
@@ -29,15 +29,16 @@
 	ALC272_DELL,
 	ALC272_DELL_ZM1,
 	ALC272_SAMSUNG_NC10,
+	ALC892_CLEVO_P150HM,
 	ALC662_MODEL_LAST,
 };
 
 #define ALC662_DIGOUT_NID	0x06
 #define ALC662_DIGIN_NID	0x0a
 
-static const hda_nid_t alc662_dac_nids[3] = {
-	/* front, rear, clfe */
-	0x02, 0x03, 0x04
+static const hda_nid_t alc662_dac_nids[4] = {
+	/* front, rear, clfe, side */
+	0x02, 0x03, 0x04, 0x05
 };
 
 static const hda_nid_t alc272_dac_nids[2] = {
@@ -172,6 +173,39 @@
 	{ 6, alc662_sixstack_ch8_init },
 };
 
+/*
+ * 4ch mode
+ */
+static const struct hda_verb alc892_clevo_p150hm_ch4_init[] = {
+	{ 0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x00 },
+	{ 0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN },
+	{ 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN },
+	{ 0x17, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x00 },
+	{ 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+	{ 0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x00 },
+	{ 0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+	{ } /* end */
+};
+
+/*
+ * 8ch mode
+ */
+static const struct hda_verb alc892_clevo_p150hm_ch8_init[] = {
+	{ 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x00 },
+	{ 0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x00 },
+	{ 0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x00 },
+	{ 0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+	{ 0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+	{ 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+	{ 0x17, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+	{ } /* end */
+};
+
+static const struct hda_channel_mode alc892_clevo_p150hm_modes[2] = {
+	{ 4, alc892_clevo_p150hm_ch4_init },
+	{ 8, alc892_clevo_p150hm_ch8_init },
+};
+
 /* Pin assignment: Front=0x14, Rear=0x15, CLFE=0x16, Side=0x17
  *                 Mic=0x18, Front Mic=0x19, Line-In=0x1a, HP=0x1b
  */
@@ -547,6 +581,12 @@
 	{}
 };
 
+static const struct hda_verb alc892_clevo_p150hm_init_verbs[] = {
+	{0x18, AC_VERB_SET_UNSOLICITED_ENABLE, AC_USRSP_EN | ALC_MIC_EVENT},
+	{0x1b, AC_VERB_SET_UNSOLICITED_ENABLE, AC_USRSP_EN | ALC_HP_EVENT},
+	{}
+};
+
 /* Set Unsolicited Event*/
 static const struct hda_verb alc662_eeepc_ep20_sue_init_verbs[] = {
 	{0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT},
@@ -987,6 +1027,7 @@
 	[ALC272_DELL]		= "dell",
 	[ALC272_DELL_ZM1]	= "dell-zm1",
 	[ALC272_SAMSUNG_NC10]	= "samsung-nc10",
+	[ALC892_CLEVO_P150HM]   = "clevo-p150hm",
 	[ALC662_AUTO]		= "auto",
 };
 
@@ -1403,6 +1444,18 @@
 		.setup = alc663_mode4_setup,
 		.init_hook = alc_inithook,
 	},
+	[ALC892_CLEVO_P150HM] = {
+		.mixers = { alc662_base_mixer, alc662_chmode_mixer },
+		.init_verbs = { alc662_init_verbs, alc662_eapd_init_verbs, alc892_clevo_p150hm_init_verbs },
+		.num_dacs = ARRAY_SIZE(alc662_dac_nids),
+		.dac_nids = alc662_dac_nids,
+		.dig_out_nid = ALC662_DIGOUT_NID,
+		.dig_in_nid = ALC662_DIGIN_NID,
+		.num_channel_mode = ARRAY_SIZE(alc892_clevo_p150hm_modes),
+		.channel_mode = alc892_clevo_p150hm_modes,
+		.input_mux = &alc662_capture_source,
+		.init_hook = alc_inithook,
+	},
 };
 
 

[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



  reply	other threads:[~2011-11-24 10:03 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-20  7:33 Clevo P170HM / Sager NP8170 audio Andrew Mahone
2011-11-08  5:42 ` Julian Sikorski
2011-11-16 13:08   ` Raymond Yau
2011-11-16 15:15     ` Julian Sikorski
2011-11-17  2:08       ` Raymond Yau
2011-11-17  8:46         ` Julian Sikorski
2011-11-17  8:55           ` Julian Sikorski
2011-11-19  2:31             ` Raymond Yau
2011-11-19  9:11               ` Julian Sikorski
2011-11-21  6:47                 ` Raymond Yau
2011-11-21 11:39                   ` Julian Sikorski
2011-11-22  5:17                     ` Raymond Yau
2011-11-22 12:45                       ` Julian Sikorski
2011-11-25  6:39                         ` Raymond Yau
2011-11-25 12:10                           ` Julian Sikorski
2011-11-28  0:42                             ` Raymond Yau
2011-11-28 10:27                               ` Julian Sikorski
2011-11-28 11:46                                 ` Raymond Yau
2011-11-28 12:02                                   ` Julian Sikorski
2011-11-28 12:34                               ` Julian Sikorski
2011-11-28 23:45                                 ` Raymond Yau
2011-11-29 10:25                                   ` Julian Sikorski
2011-12-01 16:35                                     ` Julian Sikorski
2011-12-02  0:52                                       ` Raymond Yau
2011-12-02 15:41                                         ` Julian Sikorski
2011-12-03 23:59                                           ` Raymond Yau
2011-12-04 12:41                                             ` Julian Sikorski
2011-11-24  9:20 ` Julian Sikorski
2011-11-24 10:03   ` Julian Sikorski [this message]
2011-11-24 10:30     ` Julian Sikorski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='jal4os$vs9$1@dough.gmane.org' \
    --to=belegdol@gmail.com \
    --cc=alsa-devel@alsa-project.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox