<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Intel HDMI LPE driver doesn't work well with PulseAudio"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=100488">100488</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Intel HDMI LPE driver doesn't work well with PulseAudio
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>PulseAudio
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>alsa
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>pulseaudio-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>tanuk@iki.fi
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>pulseaudio-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>lennart@poettering.net
          </td>
        </tr></table>
      <p>
        <div>
        <pre>It was reported[1] on alsa-devel that PulseAudio gets killed when trying to use
the Intel HDMI LPE driver that was introduced in kernel version 4.11. That
probably happens due to excessive CPU use in the IO thread. It's not known what
causes the high CPU use, but the discussion revealed some definite shortcomings
in PulseAudio when HDMI's underlying hw device is hw:x,0.

There are two bugs:

1) PulseAudio assumes that if the front:x device doesn't work but hw:x,0 does,
then hw:x,0 is an analog stereo device.

2) PulseAudio assumes that HDMI devices are always mapped to certain hw:x,y
devices, the first one being hw:x,3. When this assumption doesn't hold, jack
detection and ELD reading don't work.

For the first bug, I propose trying hw:x,0 for analog stereo only if everything
else fails, so if e.g. hdmi:x,0 is successfully opened, hw:x,0 won't be used.

For the second bug, I propose removing the hardcoded device numbers, and
instead query the device number from an open PCM handle. That's not reliable
for all PCM devices, but Takashi expects it to work for HDMI devices.

It's not obvious what would be the best way to modify the profile and path
configuration syntax to support the new features. I'll prepare a more detailed
proposal when I get around to it.

My impression is that the HDMI LPE driver will be widely used, so I think this
should be fixed with high priority (I'll mark this as a release blocker).

[1] <a href="http://mailman.alsa-project.org/pipermail/alsa-devel/2017-March/118903.html">http://mailman.alsa-project.org/pipermail/alsa-devel/2017-March/118903.html</a></pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>