-----Original Message----- From: alsa-devel-bounces@alsa-project.org [mailto:alsa-devel-bounces@alsa-project.org] On Behalf Of Takashi Iwai Sent: Friday, December 14, 2012 3:10 PM
+static void intel_haswell_fixup_connect_list(struct hda_codec *codec,
const struct hda_fixup *fix, int action) {
- hda_nid_t list[3] = {0x2, 0x3, 0x4};
- unsigned int vendor_param;
- if (action != HDA_FIXUP_ACT_PROBE)
return;
Is this ACT_PROBE, that is, applied only after parsing the codec? Usually a fixup for overriding the connection list is applied before parsing the tree.
Yes, this fixup is applied after parsing the codec. Because during parsing, the pin nid#6 may still report invalid connection list entries 0x00000000 in snd_hda_get_raw_connections(), which should be 0x00040302 to stand for 3 output convertors. So we need to overwrite its connection list with the proper value.
But, do you mean we can change this to the pre-probe stage, so that snd_hda_get_raw_connections() need not be called during the parsing the codec? I'll do a test.
Thanks Mengdong