All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gregorio Guidi <gregorio.guidi@gmail.com>
To: alsa-devel@alsa-project.org
Subject: [PATCH] fix headphone settings and master volume (Conexant CX20551 0x103c30b2)
Date: Sun, 8 Mar 2009 21:19:41 +0100	[thread overview]
Message-ID: <200903082119.41670.gregorio.guidi@gmail.com> (raw)

Hi, I have an Intel HDA card, Conexant CX20551 (Waikiki) model,
Subsystem Id: 0x103c30b2 (HP DV2000 series).

With these settings, there are 4 volume controls: "PCM-2" and "Speaker" to 
control speakers, "PCM" and "Headphone" to control headphones.
At the moment "PCM-2", "Speaker", "PCM" work fine, but "Headphone" has no effect 
(also reported inside bug #3091).

With the following patch, the "Headphone" volume/switch work 
as intended, with no effect on other functionalities.

--- patch_conexant.c    2009-03-08 21:10:14.000000000 +0100
+++ patch_conexant.c.new        2009-03-08 21:09:51.000000000 +0100
@@ -1357,7 +1357,7 @@
        {0x17, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN|AC_PINCTL_VREF_50 },
        /* HP, Speaker  */
        {0x13, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP },
-       {0x13, AC_VERB_SET_CONNECT_SEL,0x1},
+       {0x13, AC_VERB_SET_CONNECT_SEL,0x0},
        {0x1d, AC_VERB_SET_CONNECT_SEL,0x0},
        /* Record selector: Mic */
        {0x12, AC_VERB_SET_CONNECT_SEL,0x03},


Also, there is no "Master" control to set the volume for both speakers and 
headphones. The patch below adds a master volume (and a master 
switch) that work ok for me. By the way, with the patch the light on the mute 
button changes between blue and red, which is a nice plus.

--- patch_conexant.c    2009-03-08 21:11:14.000000000 +0100
+++ patch_conexant.c.new        2009-03-08 21:11:01.000000000 +0100
@@ -1293,6 +1293,15 @@
        HDA_CODEC_MUTE("Speaker Playback Switch", 0x1d, 0x00, HDA_OUTPUT),
        HDA_CODEC_VOLUME("Headphone Playback Volume", 0x13, 0x00, HDA_OUTPUT),
        HDA_CODEC_MUTE("Headphone Playback Switch", 0x13, 0x00, HDA_OUTPUT),
+       HDA_BIND_VOL("Master Playback Volume", &cxt5047_bind_master_vol),
+       {
+               .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
+               .name = "Master Playback Switch",
+               .info = cxt_eapd_info,
+               .get = cxt_eapd_get,
+               .put = cxt5047_hp_master_sw_put,
+               .private_value = 0x13,
+       },

        {}
 };


I am no expert of Conexant hardware and I don't know if those changes are 
correct for all the devices that share the same code (the 103c:30xx), but 
I'm confident that they are the right ones for the 103c:30b2 device.

Can someone take a look? Thanks.

Gregorio Guidi

             reply	other threads:[~2009-03-08 20:20 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-08 20:19 Gregorio Guidi [this message]
2009-03-09 11:50 ` [PATCH] fix headphone settings and master volume (Conexant CX20551 0x103c30b2) Takashi Iwai
2009-03-09 14:49   ` Gregorio Guidi
2009-03-09 15:04     ` Takashi Iwai
2009-03-09 19:19       ` Gregorio Guidi
2009-03-10 14:49         ` Takashi Iwai
2009-03-11 21:22           ` Gregorio Guidi
2009-03-12  6:43             ` Takashi Iwai
2009-03-12 14:00               ` Gregorio Guidi
2009-03-12 14:18                 ` Takashi Iwai
2009-03-12 14:35                   ` Gregorio Guidi
2009-03-12 16:11                     ` Takashi Iwai

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=200903082119.41670.gregorio.guidi@gmail.com \
    --to=gregorio.guidi@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.