[alsa-devel] HDA_PINCFG_NO_HP_FIXUP question

David Henningsson david.henningsson at canonical.com
Wed Jul 18 08:27:02 CEST 2012


I'm trying to fix a bug where the docking station is not working. I 
started by adding pins for them (because that was not present), like this:

		.type = ALC_FIXUP_PINS,
		.v.pins = (const struct alc_pincfg[]) {
			{ 0x19, 0x23a11040 }, /* dock mic */
			{ 0x1b, 0x2121103f }, /* dock headphone */
			{ }

However, this caused the real (non-dock) headphone out to "fixed up" to 
a line out, which is wrong. I'm a little unsure about the best way to 
resolve this, I can think of a few different options:

1) Also override the non-dock headphone out to have sequence number 0xf

2) Set parse_flags to HDA_PINCFG_NO_HP_FIXUP in patch_alc269

3) Try to improve the fix up algorithm to not fix up this particular 
case, but since I don't know when and where this was needed in the first 
place, I'm not sure how to do that without throwing the baby out with 
the bath water...?

David Henningsson, Canonical Ltd.

More information about the Alsa-devel mailing list