← Back to team overview

kernel-packages team mailing list archive

[Bug 1183125] Re: Haswell: Ensuring HDA codec pins refer to physical outputs

 

I believe we're experiencing basically the same problem with the
upcoming System76 Haswell desktop products.

The problem (for us) is that HDMI audio devices simply don't show up at
all in the sound menu. We're able to fix this by cherry-picking these 3
commits from mainline:

9419ab6b72325e20789a61004cf68dc9e909a009
ALSA: hda - Add power state filtering

c88d4e84e639df9a9640ecff71de2501a84d1f48
ALSA: hda - Yet another fix for broken HSW HDMI pin connections

17df3f55652f7ea8fb1197b5c32e227b3da9f215
ALSA: hda - Apply pin-enablement workaround to all Haswell HDMI codecs

These 3 commits are already present in the Saucy tree, although it seems
there is perhaps a regression currently in Saucy in that the HDMI device
will only show up if connected at boot, wont show up if you plug in a
different monitor after initially booting with a monitor that lacks HDMI
audio.

Anyway, for reference here are the mainline commits, which you can
cleanly cherry pick into the current Raring tree:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=9419ab6b72325e20789a61004cf68dc9e909a009

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c88d4e84e639df9a9640ecff71de2501a84d1f48

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=17df3f55652f7ea8fb1197b5c32e227b3da9f215

** Also affects: system76
   Importance: Undecided
       Status: New

** Changed in: system76
       Status: New => In Progress

** Changed in: system76
     Assignee: (unassigned) => Jason Gerard DeRose (jderose)

** Changed in: system76
   Importance: Undecided => Critical

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1183125

Title:
  Haswell: Ensuring HDA codec pins refer to physical outputs

Status in intel:
  New
Status in System76:
  In Progress
Status in “linux” package in Ubuntu:
  Incomplete
Status in “linux” source package in Quantal:
  In Progress
Status in “linux” source package in Raring:
  In Progress

Bug description:
  From David's email:

  http://mailman.alsa-project.org/pipermail/alsa-
  devel/2013-May/062105.html

  The HDA driver assumes that a codec pin widget node always refers to the 
  same physical output. With Haswell, it seems like this is not guaranteed 
  to be true. I would like to see this fixed on the graphics side. If not, 
  I don't know how to work around it on the audio side.

  The problems that occur on the audio side are:

    1) Some BIOSes set default pin config. E g, if the machine has a 
  single HDMI out, it can set two of the codec pins to "not connected" and 
  let the third remain "jack". As a result, the HDA driver will ignore the 
  two codec pins and only enable the third. As such, HDMI audio will not 
  work correctly, unless it's the third codec pin that is connected to the 
  physical output.

    2) Saving and restoring mutes, volumes etc is done on a per-pin basis. 
  E g, imagine that a user has a dual monitor setup and always wants audio 
  output from the left side monitor, and keep the right side monitor 
  silent. If it is not reliable which codec pin refers to which physical 
  output, one day suddenly the sound might come out on the right side 
  monitor instead.

To manage notifications about this bug go to:
https://bugs.launchpad.net/intel/+bug/1183125/+subscriptions