summaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_hdmi.c
diff options
context:
space:
mode:
authorTakashi Iwai2015-02-27 22:43:26 +0100
committerTakashi Iwai2015-03-03 11:37:57 +0100
commit2f35c630f7d49efdef29b58d81ed2531ddd916d9 (patch)
treecc3bc76348619756d7eaece66c2d0d44857acc53 /sound/pci/hda/patch_hdmi.c
parentALSA: hda - Build PCMs and controls at codec driver probe (diff)
downloadkernel-qcow2-linux-2f35c630f7d49efdef29b58d81ed2531ddd916d9.tar.gz
kernel-qcow2-linux-2f35c630f7d49efdef29b58d81ed2531ddd916d9.tar.xz
kernel-qcow2-linux-2f35c630f7d49efdef29b58d81ed2531ddd916d9.zip
ALSA: hda - Use standard workqueue for unsol and jack events
The events that are handled by HD-audio drivers are no frequent and urgent ones, so we can use the standard workqueue without any problem nowadays. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_hdmi.c')
-rw-r--r--sound/pci/hda/patch_hdmi.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 708bbed15ea3..7e9ff7b16e56 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -1576,9 +1576,8 @@ static bool hdmi_present_sense(struct hdmi_spec_per_pin *per_pin, int repoll)
update_eld = true;
}
else if (repoll) {
- queue_delayed_work(codec->bus->workq,
- &per_pin->work,
- msecs_to_jiffies(300));
+ schedule_delayed_work(&per_pin->work,
+ msecs_to_jiffies(300));
goto unlock;
}
}
@@ -2198,11 +2197,10 @@ static void generic_hdmi_free(struct hda_codec *codec)
for (pin_idx = 0; pin_idx < spec->num_pins; pin_idx++) {
struct hdmi_spec_per_pin *per_pin = get_pin(spec, pin_idx);
- cancel_delayed_work(&per_pin->work);
+ cancel_delayed_work_sync(&per_pin->work);
eld_proc_free(per_pin);
}
- flush_workqueue(codec->bus->workq);
hdmi_array_free(spec);
kfree(spec);
}