summaryrefslogtreecommitdiff
path: root/include/sound/hda_chmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/sound/hda_chmap.h')
-rw-r--r--include/sound/hda_chmap.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/include/sound/hda_chmap.h b/include/sound/hda_chmap.h
index f7fd752fc817..5a85b319439a 100644
--- a/include/sound/hda_chmap.h
+++ b/include/sound/hda_chmap.h
@@ -5,6 +5,7 @@
#ifndef __SOUND_HDA_CHMAP_H
#define __SOUND_HDA_CHMAP_H
+#include <sound/pcm.h>
#include <sound/hdaudio.h>
@@ -58,4 +59,18 @@ struct hdac_chmap {
void snd_hdac_register_chmap_ops(struct hdac_device *hdac,
struct hdac_chmap *chmap);
+int hdmi_channel_allocation(struct hdac_device *hdac, int spk_alloc,
+ int channels, bool chmap_set,
+ bool non_pcm, unsigned char *map);
+int hdmi_get_active_channels(int ca);
+void hdmi_setup_channel_mapping(struct hdac_chmap *chmap,
+ hda_nid_t pin_nid, bool non_pcm, int ca,
+ int channels, unsigned char *map,
+ bool chmap_set);
+void snd_print_channel_allocation(int spk_alloc, char *buf, int buflen);
+struct hdac_cea_channel_speaker_allocation *hdmi_get_ch_alloc_from_ca(int ca);
+int to_spk_mask(unsigned char c);
+int spk_to_chmap(int spk);
+int snd_hdac_add_chmap_ctls(struct snd_pcm *pcm, int pcm_idx,
+ struct hdac_chmap *chmap);
#endif /* __SOUND_HDA_CHMAP_H */