[Bug 74861] [hsw regression] Fast audio playback on Intel Haswell HDMI due to runtime pm

bugzilla-daemon at bugzilla.kernel.org bugzilla-daemon at bugzilla.kernel.org
Thu Jun 26 13:50:05 PDT 2014


https://bugzilla.kernel.org/show_bug.cgi?id=74861

--- Comment #40 from Nicolas Pöhlmann <nicolas.poehlmann at hardcoretec.com> ---
Created attachment 141031
  --> https://bugzilla.kernel.org/attachment.cgi?id=141031&action=edit
Fix of possible counter missmatch

After a long debugging session I've noticed the following problems with
intilizing HDMI-Devices.

1. In the hda_codec.c->snd_hda_get_raw_connections function I get an "invalid
CONNECT_LIST verb" error. Maybe this is normal on a HASWELL/BROADWELL because
of the PHYSICAL/NON-PHYSICAL node architecture, but maybe someone with
knowledge of it can prove it.

2. In the patch_hdmi.c->generic_hdmi_build_pcms function the PCM is only
initialized partially. Among others it won't set the NID of the PCM-Stream
which causes problems for the hda_codec.c->snd_hda_attach_pcm. Because later
this routine is run with "NID=0" and of course that's the point that it can't
set the default values in the hda_codec.c->set_pcm_default_values function.
This function can simply not select the right PCM-values because of the missing
NID.
But "simply" setup the NID in the patch_hdmi.c->generic_hdmi_build_pcms like in
the non HDMI hda_generic.c->snd_hda_gen_build_pcms function isn't an
opportunity at least for HASWELL/BROADWELL/VALLEYVIEW processors because of the
patch_hdmi.c->hdmi_pcm_open workaround for these processors reassignment of
these NID's.

I've added a fix of a possible counter missmatch in the patch and get rid of an
unneeded pointer to be more hda_generic.c like.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the intel-gfx-bugs mailing list