[alsa-devel] [PATCH v1 3/5] ALSA: hda - Add DP-MST conn list support
Takashi Iwai
tiwai at suse.de
Thu Nov 14 11:57:48 CET 2019
On Thu, 14 Nov 2019 04:37:02 +0100,
Nikhil Mahale wrote:
>
> Document change notification HDA040-A for the Intel High Definition
> Audio 1.0a specification introduces a Device Select verb for Digital
> Display Pin Widgets that are multi-stream capable. This verb selects
> a Device Entry that is used by subsequent Pin Widget verbs,
> including the Get Connection List Entry verb.
>
> This patch queries the current Device Select value, associates it
> with the connection list, and updates the connection list management
> code to consider dev_id along with nid.
I don't get why this is needed. This is the list that is added only
from snd_hda_override_conn_list(), and you don't change that call
pattern, so dev_id is always zero.
thanks,
Takashi
>
> Signed-off-by: Nikhil Mahale <nmahale at nvidia.com>
> Reviewed-by: Aaron Plattner <aplattner at nvidia.com>
> ---
> sound/pci/hda/hda_codec.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
> index a2fb19129219..8f32cab8f4a4 100644
> --- a/sound/pci/hda/hda_codec.c
> +++ b/sound/pci/hda/hda_codec.c
> @@ -88,6 +88,7 @@ struct hda_conn_list {
> struct list_head list;
> int len;
> hda_nid_t nid;
> + int dev_id;
> hda_nid_t conns[0];
> };
>
> @@ -96,8 +97,9 @@ static struct hda_conn_list *
> lookup_conn_list(struct hda_codec *codec, hda_nid_t nid)
> {
> struct hda_conn_list *p;
> + int dev_id = snd_hda_get_dev_select(codec, nid);
> list_for_each_entry(p, &codec->conn_list, list) {
> - if (p->nid == nid)
> + if (p->nid == nid && p->dev_id == dev_id)
> return p;
> }
> return NULL;
> @@ -113,6 +115,7 @@ static int add_conn_list(struct hda_codec *codec, hda_nid_t nid, int len,
> return -ENOMEM;
> p->len = len;
> p->nid = nid;
> + p->dev_id = snd_hda_get_dev_select(codec, nid);
> memcpy(p->conns, list, len * sizeof(hda_nid_t));
> list_add(&p->list, &codec->conn_list);
> return 0;
> --
> 2.16.4
>
More information about the Alsa-devel
mailing list