On Mon, 20 Jan 2020 17:01:17 +0100, Kai Vehmanen wrote: > > The initial snd_hda_get_sub_node() can fail on certain > devices (e.g. some Chromebook models using Intel GLK). > The failure rate is very low, but as this is is part of > the probe process, end-user impact is high. > > In observed cases, related hardware status registers have > expected values, but the node query still fails. Retrying > the node query does seem to help, so fix the problem by > adding retry logic to the query. This does not impact > non-Intel platforms. > > BugLink: https://github.com/thesofproject/linux/issues/1642 > Signed-off-by: Kai Vehmanen <kai.vehmanen@xxxxxxxxxxxxxxx> > Reviewed-by: Takashi Iwai <tiwai@xxxxxxx> It seems that this felt out of Mark's hands, so I picked up now to my tree, as this doesn't seem depending on other changes. Now applied to for-next branch. thanks, Takashi > --- > sound/pci/hda/patch_hdmi.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c > index 630b1f5c276d..a4b75a9dfe3b 100644 > --- a/sound/pci/hda/patch_hdmi.c > +++ b/sound/pci/hda/patch_hdmi.c > @@ -2830,9 +2830,12 @@ static int alloc_intel_hdmi(struct hda_codec *codec) > /* parse and post-process for Intel codecs */ > static int parse_intel_hdmi(struct hda_codec *codec) > { > - int err; > + int err, retries = 3; > + > + do { > + err = hdmi_parse_codec(codec); > + } while (err < 0 && retries--); > > - err = hdmi_parse_codec(codec); > if (err < 0) { > generic_spec_free(codec); > return err; > -- > 2.17.1 > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel