Good news, anyway. Attached alsa-info.txt with model=b1900.
And I followed to use only data for automute while set_gpio inside init_verb; which works. Below is the code (attached diff):
/* toggle speaker-output according to the hp-jack state */ static void alc260_b1900_automute(struct hda_codec *codec) { unsigned int present;
present = snd_hda_jack_detect(codec, 0x0f); if (present) { snd_hda_codec_write_cache(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA, 1); } else { snd_hda_codec_write_cache(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA, 0); } }
static const struct hda_verb alc260_b1900_verbs[] = { {0x0f, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, {0x0b, AC_VERB_SET_CONNECT_SEL, 0x00}, {0x0d, AC_VERB_SET_CONNECT_SEL, 0x00}, {0x0f, AC_VERB_SET_EAPD_BTLENABLE, 0x02}, {0x1a, AC_VERB_SET_COEF_INDEX, 0x07}, {0x1a, AC_VERB_SET_PROC_COEF, 0x3040}, {0x01, AC_VERB_SET_GPIO_MASK, 0x01}, {0x01, AC_VERB_SET_GPIO_DIRECTION, 0x01}, {0x0f, AC_VERB_SET_UNSOLICITED_ENABLE, AC_USRSP_EN | ALC880_HP_EVENT}, {} };
On 2012年02月16日 17:42, Takashi Iwai wrote:
At Thu, 16 Feb 2012 10:41:32 +0100, Takashi Iwai wrote:
At Thu, 16 Feb 2012 17:38:33 +0800, joey.jiaojg wrote:
YES, you are right on the assumption. I tried again many times of SET_GPIO_DATA between 0/1, speaker/headphone switches. So is possible to merge into next ALSA release?
Not ready for "merge". As mentioned, your patch can't be applied to the latest tree.
I'll work on the better implementation of a quirk for the auto-parser later.
Oh, for that, could you give alsa-info.sh output? Attach the output file (don't paste) obtained with --no-upload option.
thanks,
Takashi