alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: David Henningsson <david.henningsson@canonical.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: Jonathan Nieder <jrnieder@gmail.com>,
	Andres Cimmarusti <acimmarusti@gmail.com>,
	alsa-devel@alsa-project.org, 660111@bugs.debian.org,
	swarren@nvidia.com
Subject: Re: multiple, non-physically accesible, HDMI devices listed for Intel IbexPeak ALC269VB
Date: Thu, 23 Feb 2012 07:46:37 +0100	[thread overview]
Message-ID: <4F45E0CD.3020009@canonical.com> (raw)
In-Reply-To: <s5hwr7f48jd.wl%tiwai@suse.de>

On 02/22/2012 08:44 AM, Takashi Iwai wrote:
> At Wed, 22 Feb 2012 01:43:44 -0500,
> Andres Cimmarusti wrote:
>>
>> [1<text/plain; UTF-8 (7bit)>]
>> Dear Mr. Warren,
>>
>> I recently upgraded my laptop to Debian testing (from Debian stable +
>> the longterm stable 3.0.x kernel). The newer kernel 3.2.x came with a
>> regression that git bisect has traced down to one of your commits in
>> the early 3.1.x kernel development stage (git bisect output and git
>> bisect log attached).
>>
>> Under kernel 3.0.x HDMI sound works out-of-the-box as tested with
>> pulse audio (choosing the option Digital
>> Stereo (HDMI) Output) and by the command:
>>
>> $ aplay -D plughw:0,3 /usr/share/sounds/alsa/Front_Center.wav
>>
>> Alsa's device list reveals:
>>
>> $ aplay -l
>> **** List of PLAYBACK Hardware Devices ****
>> card 0: Intel [HDA Intel], device 0: ALC269VB Analog [ALC269VB Analog]
>>    Subdevices: 0/1
>>    Subdevice #0: subdevice #0
>> card 0: Intel [HDA Intel], device 3: HDMI 0 [HDMI 0]
>>    Subdevices: 1/1
>>    Subdevice #0: subdevice #0
>>
>> Unfortunately with kernel 3.2.x and 3.1.x I get no sound out choosing the same
>> configuration in pulseaudio. Device is advertised correctly but
>> there's a bizarre multiplicity advertised:
>>
>> $ aplay -l
>> **** List of PLAYBACK Hardware Devices ****
>> card 0: Intel [HDA Intel], device 0: ALC269VB Analog [ALC269VB Analog]
>>    Subdevices: 1/1
>>    Subdevice #0: subdevice #0
>> card 0: Intel [HDA Intel], device 3: HDMI 0 [HDMI 0]
>>    Subdevices: 1/1
>>    Subdevice #0: subdevice #0
>> card 0: Intel [HDA Intel], device 7: HDMI 1 [HDMI 1]
>>    Subdevices: 1/1
>>    Subdevice #0: subdevice #0
>> card 0: Intel [HDA Intel], device 8: HDMI 2 [HDMI 2]
>>    Subdevices: 1/1
>>    Subdevice #0: subdevice #0
>>
>> Using aplay with device 3 says device is busy. Device 7 works
>> correctly (but is not available in pulseaudio unless forced by
>> default, which then renders internal speakers disabled) and device 8
>> produces no sound out.
>>
>> This appears to be a regression in the kernel about this device,
>> advertising non-physically connected HDMI sound devices that cause
>> pulse audio to get
>> confused (Pulseaudio only seems to be able to handle one HDMI output
>> by default device 0,3).
>
> The biggest problem is that PA checks only the first HDMI device.
> In that sense, this is no regression in the kernel side, although I
> know it's annoying.

There is active work going on in this area. In fact, I just posted a 
patch to the PA mailinglist [1]. And yes, we already have it in Ubuntu 
11.10 (to probe multiple hdmi devices for Intel and NVidia), and the 
main reason it took until now to upstream that patch, was the decision 
to switch jack detection method from input devices to kcontrols.

> If the new two pins can be never used, i.e. physically unreachable,
> we may disable these pins by giving the proper default pin-config
> values.  Usually it's a job of BIOS.  But if BIOS doesn't do it, user
> need to do it manually.
>
> Build your kernel with CONFIG_SND_HDA_HWDEP=y,
> CONFIG_SND_HDA_RECONFIG=y, CONFIG_SND_HDA_PATCH_LOADER=y.
> I guess most of distro kernels are built with them.
> Then create a file containing below in /lib/firmware, such as,
> /lib/firmware/ibx-hdmi:
>
> ================================================================
> [codec]
> 0x80862804 0x80860101 3
> [pincfg]
> 0x04 0x411111f0
> 0x06 0x411111f0
> ================================================================
>
> Now pass this file to "patch" module option for snd-hda-intel.
> For example, create a file in /etc/modprobe.d/,
> e.g. /etc/modprobe.d/50-hdmi.conf, containing the line
>
> options snd-hda-intel patch="ibx-hdmi"
>
> Then reload the driver or reboot.  This will disable pins 0x04 and
> 0x06 so that only the pin 0x05 will be used.

Let me also push for the hda-jack-retask [2] application, which is an 
easy-to-use GUI for creating these types of firmware files. I advertised 
it here a while ago [3] but it seems to have gone unnoticed.

-- 
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic

[1] 
http://lists.freedesktop.org/archives/pulseaudio-discuss/2012-February/012872.html

[2] 
http://voices.canonical.com/david.henningsson/2011/11/29/turn-your-mic-jack-into-a-headphone-jack/

[3] 
http://mailman.alsa-project.org/pipermail/alsa-devel/2011-December/046778.html

  reply	other threads:[~2012-02-23  6:46 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-22  6:43 Bug#660111: multiple, non-physically accesible, HDMI devices listed for Intel IbexPeak ALC269VB Andres Cimmarusti
2012-02-22  7:44 ` Takashi Iwai
2012-02-23  6:46   ` David Henningsson [this message]
2012-03-03 23:36     ` Bug#660111: [alsa-devel] " Andres Cimmarusti
2012-03-04  2:43       ` David Henningsson
2012-03-05 14:39         ` Takashi Iwai
2012-02-22 16:45 ` Stephen Warren
2012-02-22 21:52   ` Jonathan Nieder
2012-02-23  0:01     ` Bug#660111: " Andres Cimmarusti
2012-02-23  0:39       ` Stephen Warren
2012-02-23  8:30       ` David Henningsson
2012-02-23 16:17         ` Stephen Warren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F45E0CD.3020009@canonical.com \
    --to=david.henningsson@canonical.com \
    --cc=660111@bugs.debian.org \
    --cc=acimmarusti@gmail.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=jrnieder@gmail.com \
    --cc=swarren@nvidia.com \
    --cc=tiwai@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).