ALSA: hda - fix number of devices query on hotplug
authorDave Airlie <airlied@redhat.com>
Tue, 9 Jun 2015 03:39:31 +0000 (13:39 +1000)
committerTakashi Iwai <tiwai@suse.de>
Tue, 9 Jun 2015 05:15:29 +0000 (07:15 +0200)
The new regmap code seems to cache this, which isn't helpful
for the hotplug dock situation where this gets updated.

Use the uncached query for this.

Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_codec.c

index b49feff0a31982e7c22071c08e8d088e91a97727..b7782212dd64baace732abf7fa83d09509fba409 100644 (file)
@@ -436,7 +436,7 @@ static unsigned int get_num_devices(struct hda_codec *codec, hda_nid_t nid)
            get_wcaps_type(wcaps) != AC_WID_PIN)
                return 0;
 
-       parm = snd_hda_param_read(codec, nid, AC_PAR_DEVLIST_LEN);
+       parm = snd_hdac_read_parm_uncached(&codec->core, nid, AC_PAR_DEVLIST_LEN);
        if (parm == -1 && codec->bus->rirb_error)
                parm = 0;
        return parm & AC_DEV_LIST_LEN_MASK;