All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Henningsson <david.henningsson@canonical.com>
To: mengdong.lin@intel.com
Cc: tiwai@suse.de, alsa-devel@alsa-project.org
Subject: Re: [PATCH] ALSA: hda - bug fix on return value when getting HDMI ELD info
Date: Wed, 27 Mar 2013 11:16:21 +0100	[thread overview]
Message-ID: <5152C6F5.1060007@canonical.com> (raw)
In-Reply-To: <1364391446-23883-1-git-send-email-mengdong.lin@intel.com>

On 03/27/2013 02:37 PM, mengdong.lin@intel.com wrote:
> From: Mengdong Lin <mengdong.lin@intel.com>
>
> In function snd_hdmi_get_eld(), the variable 'ret' should be initialized to 0.
> Otherwise it will be returned uninitialized as non-zero after ELD info is got
> successfully. Thus hdmi_present_sense() will always assume ELD info is invalid
> by mistake, and /proc file system cannot show the proper ELD info.
>
> This patch also let debug message show 'pin_eld->monitor_present' which is the
> real pin response to verb GET_PIN_SENSE.
>
> Signed-off-by: Mengdong Lin <mengdong.lin@intel.com>

Reviewed-by: David Henningsson <david.henningsson@canonical.com>

Good findings.
The first one is at least in 3.8 and so this should be sent to stable too.

The second one (pin_eld) is new for 3.9, and probably caused by me, so, 
sorry for that :-/


>
> diff --git a/sound/pci/hda/hda_eld.c b/sound/pci/hda/hda_eld.c
> index 7dd8463..d0d7ac1 100644
> --- a/sound/pci/hda/hda_eld.c
> +++ b/sound/pci/hda/hda_eld.c
> @@ -320,7 +320,7 @@ int snd_hdmi_get_eld(struct hda_codec *codec, hda_nid_t nid,
>   		     unsigned char *buf, int *eld_size)
>   {
>   	int i;
> -	int ret;
> +	int ret = 0;
>   	int size;
>
>   	/*
> diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
> index 78e1827..de8ac5c 100644
> --- a/sound/pci/hda/patch_hdmi.c
> +++ b/sound/pci/hda/patch_hdmi.c
> @@ -1196,7 +1196,7 @@ static void hdmi_present_sense(struct hdmi_spec_per_pin *per_pin, int repoll)
>
>   	_snd_printd(SND_PR_VERBOSE,
>   		"HDMI status: Codec=%d Pin=%d Presence_Detect=%d ELD_Valid=%d\n",
> -		codec->addr, pin_nid, eld->monitor_present, eld->eld_valid);
> +		codec->addr, pin_nid, pin_eld->monitor_present, eld->eld_valid);
>
>   	if (eld->eld_valid) {
>   		if (snd_hdmi_get_eld(codec, pin_nid, eld->eld_buffer,
>



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

  reply	other threads:[~2013-03-27 10:16 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-27 13:37 [PATCH] ALSA: hda - bug fix on return value when getting HDMI ELD info mengdong.lin
2013-03-27 10:16 ` David Henningsson [this message]
2013-03-28  1:08   ` Lin, Mengdong
2013-03-28  2:19   ` Lin, Mengdong

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=5152C6F5.1060007@canonical.com \
    --to=david.henningsson@canonical.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=mengdong.lin@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.