summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2026-04-09 11:38:14 +0200
committerTakashi Iwai <tiwai@suse.de>2026-04-09 12:05:54 +0200
commitb0762dd2fcab5b8b4b953314f3f6eb9d92bc16bc (patch)
tree8d6e0ee6f0d1eb1a7558bad22a56be52b990cc3b /include
parent9575766a682f50ec4bcb85ecd438685bdc09f9cc (diff)
ALSA: hda: Add sync version of snd_hda_codec_write()
We used snd_hda_codec_read() for the verb write when a synchronization is needed after the write, e.g. for the power state toggle or such cases. It works in principle, but it looks rather confusing and too hackish. For improving the code readability, introduce a new helper function, snd_hda_codec_write_sync(), which is another variant of snd_hda_codec_write(), and replace the existing snd_hda_codec_read() calls with this one. No behavior change but just the code refactoring. Signed-off-by: Takashi Iwai <tiwai@suse.de> Link: https://patch.msgid.link/20260409093826.1317626-2-tiwai@suse.de
Diffstat (limited to 'include')
-rw-r--r--include/sound/hda_codec.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/sound/hda_codec.h b/include/sound/hda_codec.h
index 5d9f0ef228af..292d6024388b 100644
--- a/include/sound/hda_codec.h
+++ b/include/sound/hda_codec.h
@@ -336,6 +336,17 @@ snd_hda_codec_write(struct hda_codec *codec, hda_nid_t nid, int flags,
return snd_hdac_codec_write(&codec->core, nid, flags, verb, parm);
}
+/* sync after write */
+static inline int
+snd_hda_codec_write_sync(struct hda_codec *codec, hda_nid_t nid, int flags,
+ unsigned int verb, unsigned int parm)
+{
+ /* use snd_hda_codec_read() for writing;
+ * the returned value is usually discarded
+ */
+ return snd_hdac_codec_read(&codec->core, nid, flags, verb, parm);
+}
+
#define snd_hda_param_read(codec, nid, param) \
snd_hdac_read_parm(&(codec)->core, nid, param)
#define snd_hda_get_sub_nodes(codec, nid, start_nid) \