[alsa-devel] [PATCH] ALSA: hda - Fix error accessing non-existent node for Realtek codecs
David Henningsson
david.henningsson at canonical.com
Mon Jul 15 10:58:16 CEST 2013
On 07/15/2013 10:55 AM, Takashi Iwai wrote:
> At Mon, 15 Jul 2013 10:20:52 +0200,
> David Henningsson wrote:
>>
>> A recent commit caused my hda-emu based test tool to complain about
>> accessing nodes that don't exist. This simple test works around this.
>>
>> Signed-off-by: David Henningsson <david.henningsson at canonical.com>
>> ---
>> sound/pci/hda/patch_realtek.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> I don't have ALC5505 hardware here, no alsa-info to look at, and I don't know
>> what it is. Therefore it would be good with some confirmation that this patch
>> does not break such hardware, which could be the case if the Realtek codec
>> breaks the HDA spec by having "hidden" nodes.
>
> It seems that ALC5505 itself doesn't appear in the codec information
> but it appears transparent to the real codec behind it. So the node
> 0x51 doesn't exist in the widget list of the codec, and your patch
> will break.
I suspected that, but without alsa-info there was no way to tell if this
was the case or not.
> we may need to patch hda-emu instead...
Okay. Also, is there a way to limit the effect here, like, what codec
(or codec variants) have this secret 0x51 node? Right now it's being
tested for most of ALC2xx codecs.
>
>
> Takashi
>
>>
>> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
>> index 8bd2261..ca73f10 100644
>> --- a/sound/pci/hda/patch_realtek.c
>> +++ b/sound/pci/hda/patch_realtek.c
>> @@ -3844,7 +3844,8 @@ static int patch_alc269(struct hda_codec *codec)
>> break;
>> }
>>
>> - if (snd_hda_codec_read(codec, 0x51, 0, AC_VERB_PARAMETERS, 0) == 0x10ec5505) {
>> + if (codec->num_nodes > 0x51 &&
>> + snd_hda_codec_read(codec, 0x51, 0, AC_VERB_PARAMETERS, 0) == 0x10ec5505) {
>> spec->has_alc5505_dsp = true;
>> spec->init_hook = alc5505_dsp_init;
>> }
>> --
>> 1.7.9.5
>>
>
--
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic
More information about the Alsa-devel
mailing list