[alsa-devel] HDMI LPCM (7.1) with AMD/FGLRX

Andrée 'Glaucous' glakke1 at gmail.com
Mon Aug 8 19:15:35 CEST 2011


I'm not quite sure which version (of patch_hdmi.c) you are using, since the
patch fails on kernel 3.0-stable.

--
patching file sound/pci/hda/patch_hdmi.c
Hunk #1 FAILED at 923.
Hunk #2 FAILED at 996.
2 out of 2 hunks FAILED -- saving rejects to file
sound/pci/hda/patch_hdmi.c.rej


On 8 August 2011 16:58, Takashi Iwai <tiwai at suse.de> wrote:

> At Mon, 8 Aug 2011 16:43:31 +0200,
> Andrée 'Glaucous' wrote:
> >
> > Thanks.
> >
> > # hda-verb /dev/snd/hwC2D0 0x03 GET_PIN_SENSE 0
> > nid = 0x3, verb = 0xf09, param = 0x0
> > value = 0xffffffff
>
> This looks pretty invalid.
>
> > With monitor connected and outputting.
>
> So, either codec or the a driver is too lazy to give the info.
>
> Also, looking at your codec proc file, the codec doesn't give the
> right channel count, too.
>
> What happens with the patch below?
>
>
> Takashi
>
> ---
> diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
> index 19cb72d..4da81b3 100644
> --- a/sound/pci/hda/patch_hdmi.c
> +++ b/sound/pci/hda/patch_hdmi.c
> @@ -923,6 +923,7 @@ static void hdmi_present_sense(struct hda_codec *codec,
> hda_nid_t pin_nid,
>
>        memset(eld, 0, sizeof(*eld));
>
> +       printk(KERN_INFO "XXX HDMI pin_sense = 0x%x\n", present);
>        eld->monitor_present    = !!(present & AC_PINSENSE_PRESENCE);
>        if (eld->monitor_present)
>                eld->eld_valid  = !!(present & AC_PINSENSE_ELDV);
> @@ -996,6 +997,7 @@ static int hdmi_add_cvt(struct hda_codec *codec,
> hda_nid_t cvt_nid)
>
>        chans = get_wcaps(codec, cvt_nid);
>        chans = get_wcaps_channels(chans);
> +       chans = 8; /* XXX */
>
>        cvt_idx = spec->num_cvts;
>        per_cvt = &spec->cvts[cvt_idx];
>


More information about the Alsa-devel mailing list