1<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 7. ASoC</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="The ALSA Driver API"><link rel="up" href="index.html" title="The ALSA Driver API"><link rel="prev" href="API-struct-snd-compr.html" title="struct snd_compr"><link rel="next" href="API-struct-snd-soc-jack-pin.html" title="struct snd_soc_jack_pin"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 7. ASoC</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-struct-snd-compr.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="API-struct-snd-soc-jack-pin.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="id-1.9"></a>Chapter 7. ASoC</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="ch07.html#id-1.9.2">ASoC Core API</a></span></dt><dt><span class="sect1"><a href="ch07s02.html">ASoC DAPM API</a></span></dt><dt><span class="sect1"><a href="ch07s03.html">ASoC DMA Engine API</a></span></dt></dl></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id-1.9.2"></a>ASoC Core API</h2></div></div></div><div class="toc"><dl class="toc"><dt><span class="refentrytitle"><a href="API-struct-snd-soc-jack-pin.html"><span class="phrase">struct snd_soc_jack_pin</span></a></span><span class="refpurpose"> — 
2  Describes a pin to update based on jack detection
3 </span></dt><dt><span class="refentrytitle"><a href="API-struct-snd-soc-jack-zone.html"><span class="phrase">struct snd_soc_jack_zone</span></a></span><span class="refpurpose"> — 
4     Describes voltage zones of jack detection
5 </span></dt><dt><span class="refentrytitle"><a href="API-struct-snd-soc-jack-gpio.html"><span class="phrase">struct snd_soc_jack_gpio</span></a></span><span class="refpurpose"> — 
6     Describes a gpio pin for jack detection
7 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-to-codec.html"><span class="phrase">snd_soc_component_to_codec</span></a></span><span class="refpurpose"> — 
8     Casts a component to the CODEC it is embedded in
9 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-to-platform.html"><span class="phrase">snd_soc_component_to_platform</span></a></span><span class="refpurpose"> — 
10     Casts a component to the platform it is embedded in
11 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dapm-to-component.html"><span class="phrase">snd_soc_dapm_to_component</span></a></span><span class="refpurpose"> — 
12     Casts a DAPM context to the component it is embedded in
13 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dapm-to-codec.html"><span class="phrase">snd_soc_dapm_to_codec</span></a></span><span class="refpurpose"> — 
14     Casts a DAPM context to the CODEC it is embedded in
15 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dapm-to-platform.html"><span class="phrase">snd_soc_dapm_to_platform</span></a></span><span class="refpurpose"> — 
16     Casts a DAPM context to the platform it is embedded in
17 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-get-dapm.html"><span class="phrase">snd_soc_component_get_dapm</span></a></span><span class="refpurpose"> — 
18     Returns the DAPM context associated with a component
19 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-codec-get-dapm.html"><span class="phrase">snd_soc_codec_get_dapm</span></a></span><span class="refpurpose"> — 
20     Returns the DAPM context for the CODEC
21 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-codec-init-bias-level.html"><span class="phrase">snd_soc_codec_init_bias_level</span></a></span><span class="refpurpose"> — 
22     Initialize CODEC DAPM bias level
23 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-codec-get-bias-level.html"><span class="phrase">snd_soc_codec_get_bias_level</span></a></span><span class="refpurpose"> — 
24     Get current CODEC DAPM bias level
25 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-codec-force-bias-level.html"><span class="phrase">snd_soc_codec_force_bias_level</span></a></span><span class="refpurpose"> — 
26     Set the CODEC DAPM bias level
27 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dapm-kcontrol-codec.html"><span class="phrase">snd_soc_dapm_kcontrol_codec</span></a></span><span class="refpurpose"> — 
28     Returns the codec associated to a kcontrol
29 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-cache-sync.html"><span class="phrase">snd_soc_cache_sync</span></a></span><span class="refpurpose"> — 
30     Sync the register cache with the hardware
31 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-codec-init-regmap.html"><span class="phrase">snd_soc_codec_init_regmap</span></a></span><span class="refpurpose"> — 
32     Initialize regmap instance for the CODEC
33 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-codec-exit-regmap.html"><span class="phrase">snd_soc_codec_exit_regmap</span></a></span><span class="refpurpose"> — 
34     De-initialize regmap instance for the CODEC
35 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-kcontrol-component.html"><span class="phrase">snd_soc_kcontrol_component</span></a></span><span class="refpurpose"> — 
36     Returns the component that registered the control
37 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-kcontrol-codec.html"><span class="phrase">snd_soc_kcontrol_codec</span></a></span><span class="refpurpose"> — 
38     Returns the CODEC that registered the control
39 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-kcontrol-platform.html"><span class="phrase">snd_soc_kcontrol_platform</span></a></span><span class="refpurpose"> — 
40     Returns the platform that registered the control
41 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-runtime-set-dai-fmt.html"><span class="phrase">snd_soc_runtime_set_dai_fmt</span></a></span><span class="refpurpose"> — 
42  Change DAI link format for a ASoC runtime
43 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-cnew.html"><span class="phrase">snd_soc_cnew</span></a></span><span class="refpurpose"> — 
44     create new control
45 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-add-component-controls.html"><span class="phrase">snd_soc_add_component_controls</span></a></span><span class="refpurpose"> — 
46     Add an array of controls to a component.
47 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-add-codec-controls.html"><span class="phrase">snd_soc_add_codec_controls</span></a></span><span class="refpurpose"> — 
48     add an array of controls to a codec. Convenience function to add a list of controls. Many codecs were duplicating this code.
49 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-add-platform-controls.html"><span class="phrase">snd_soc_add_platform_controls</span></a></span><span class="refpurpose"> — 
50     add an array of controls to a platform. Convenience function to add a list of controls.
51 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-add-card-controls.html"><span class="phrase">snd_soc_add_card_controls</span></a></span><span class="refpurpose"> — 
52     add an array of controls to a SoC card. Convenience function to add a list of controls.
53 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-add-dai-controls.html"><span class="phrase">snd_soc_add_dai_controls</span></a></span><span class="refpurpose"> — 
54     add an array of controls to a DAI. Convienience function to add a list of controls.
55 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-set-sysclk.html"><span class="phrase">snd_soc_dai_set_sysclk</span></a></span><span class="refpurpose"> — 
56     configure DAI system or master clock.
57 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-codec-set-sysclk.html"><span class="phrase">snd_soc_codec_set_sysclk</span></a></span><span class="refpurpose"> — 
58     configure CODEC system or master clock.
59 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-set-clkdiv.html"><span class="phrase">snd_soc_dai_set_clkdiv</span></a></span><span class="refpurpose"> — 
60     configure DAI clock dividers.
61 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-set-pll.html"><span class="phrase">snd_soc_dai_set_pll</span></a></span><span class="refpurpose"> — 
62     configure DAI PLL.
63 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-set-bclk-ratio.html"><span class="phrase">snd_soc_dai_set_bclk_ratio</span></a></span><span class="refpurpose"> — 
64     configure BCLK to sample rate ratio.
65 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-set-fmt.html"><span class="phrase">snd_soc_dai_set_fmt</span></a></span><span class="refpurpose"> — 
66     configure DAI hardware audio format.
67 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-set-tdm-slot.html"><span class="phrase">snd_soc_dai_set_tdm_slot</span></a></span><span class="refpurpose"> — 
68     Configures a DAI for TDM operation
69 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-set-channel-map.html"><span class="phrase">snd_soc_dai_set_channel_map</span></a></span><span class="refpurpose"> — 
70     configure DAI audio channel map
71 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-set-tristate.html"><span class="phrase">snd_soc_dai_set_tristate</span></a></span><span class="refpurpose"> — 
72     configure DAI system or master clock.
73 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-dai-digital-mute.html"><span class="phrase">snd_soc_dai_digital_mute</span></a></span><span class="refpurpose"> — 
74     configure DAI system or master clock.
75 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-register-card.html"><span class="phrase">snd_soc_register_card</span></a></span><span class="refpurpose"> — 
76     Register a card with the ASoC core
77 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-unregister-card.html"><span class="phrase">snd_soc_unregister_card</span></a></span><span class="refpurpose"> — 
78     Unregister a card with the ASoC core
79 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-init-regmap.html"><span class="phrase">snd_soc_component_init_regmap</span></a></span><span class="refpurpose"> — 
80     Initialize regmap instance for the component
81 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-exit-regmap.html"><span class="phrase">snd_soc_component_exit_regmap</span></a></span><span class="refpurpose"> — 
82     De-initialize regmap instance for the component
83 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-unregister-component.html"><span class="phrase">snd_soc_unregister_component</span></a></span><span class="refpurpose"> — 
84     Unregister a component from the ASoC core
85 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-add-platform.html"><span class="phrase">snd_soc_add_platform</span></a></span><span class="refpurpose"> — 
86     Add a platform to the ASoC core
87 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-register-platform.html"><span class="phrase">snd_soc_register_platform</span></a></span><span class="refpurpose"> — 
88     Register a platform with the ASoC core
89 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-remove-platform.html"><span class="phrase">snd_soc_remove_platform</span></a></span><span class="refpurpose"> — 
90     Remove a platform from the ASoC core
91 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-unregister-platform.html"><span class="phrase">snd_soc_unregister_platform</span></a></span><span class="refpurpose"> — 
92     Unregister a platform from the ASoC core
93 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-register-codec.html"><span class="phrase">snd_soc_register_codec</span></a></span><span class="refpurpose"> — 
94     Register a codec with the ASoC core
95 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-unregister-codec.html"><span class="phrase">snd_soc_unregister_codec</span></a></span><span class="refpurpose"> — 
96     Unregister a codec from the ASoC core
97 </span></dt><dt><span class="refentrytitle"><a href="API-devm-snd-soc-register-component.html"><span class="phrase">devm_snd_soc_register_component</span></a></span><span class="refpurpose"> — 
98  resource managed component registration
99 </span></dt><dt><span class="refentrytitle"><a href="API-devm-snd-soc-register-platform.html"><span class="phrase">devm_snd_soc_register_platform</span></a></span><span class="refpurpose"> — 
100     resource managed platform registration
101 </span></dt><dt><span class="refentrytitle"><a href="API-devm-snd-soc-register-card.html"><span class="phrase">devm_snd_soc_register_card</span></a></span><span class="refpurpose"> — 
102     resource managed card registration
103 </span></dt><dt><span class="refentrytitle"><a href="API-devm-snd-dmaengine-pcm-register.html"><span class="phrase">devm_snd_dmaengine_pcm_register</span></a></span><span class="refpurpose"> — 
104     resource managed dmaengine PCM registration
105 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-read.html"><span class="phrase">snd_soc_component_read</span></a></span><span class="refpurpose"> — 
106  Read register value
107 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-write.html"><span class="phrase">snd_soc_component_write</span></a></span><span class="refpurpose"> — 
108     Write register value
109 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-update-bits.html"><span class="phrase">snd_soc_component_update_bits</span></a></span><span class="refpurpose"> — 
110     Perform read/modify/write cycle
111 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-update-bits-async.html"><span class="phrase">snd_soc_component_update_bits_async</span></a></span><span class="refpurpose"> — 
112     Perform asynchronous read/modify/write cycle
113 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-async-complete.html"><span class="phrase">snd_soc_component_async_complete</span></a></span><span class="refpurpose"> — 
114     Ensure asynchronous I/O has completed
115 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-component-test-bits.html"><span class="phrase">snd_soc_component_test_bits</span></a></span><span class="refpurpose"> — 
116     Test register for change
117 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-update-bits.html"><span class="phrase">snd_soc_update_bits</span></a></span><span class="refpurpose"> — 
118     update codec register bits
119 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-test-bits.html"><span class="phrase">snd_soc_test_bits</span></a></span><span class="refpurpose"> — 
120     test register for change
121 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-set-runtime-hwparams.html"><span class="phrase">snd_soc_set_runtime_hwparams</span></a></span><span class="refpurpose"> — 
122  set the runtime hardware parameters
123 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-info-enum-double.html"><span class="phrase">snd_soc_info_enum_double</span></a></span><span class="refpurpose"> — 
124  enumerated double mixer info callback
125 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-get-enum-double.html"><span class="phrase">snd_soc_get_enum_double</span></a></span><span class="refpurpose"> — 
126     enumerated double mixer get callback
127 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-put-enum-double.html"><span class="phrase">snd_soc_put_enum_double</span></a></span><span class="refpurpose"> — 
128     enumerated double mixer put callback
129 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-info-volsw.html"><span class="phrase">snd_soc_info_volsw</span></a></span><span class="refpurpose"> — 
130     single mixer info callback
131 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-info-volsw-sx.html"><span class="phrase">snd_soc_info_volsw_sx</span></a></span><span class="refpurpose"> — 
132     Mixer info callback for SX TLV controls
133 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-get-volsw.html"><span class="phrase">snd_soc_get_volsw</span></a></span><span class="refpurpose"> — 
134     single mixer get callback
135 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-put-volsw.html"><span class="phrase">snd_soc_put_volsw</span></a></span><span class="refpurpose"> — 
136     single mixer put callback
137 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-get-volsw-sx.html"><span class="phrase">snd_soc_get_volsw_sx</span></a></span><span class="refpurpose"> — 
138     single mixer get callback
139 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-put-volsw-sx.html"><span class="phrase">snd_soc_put_volsw_sx</span></a></span><span class="refpurpose"> — 
140     double mixer set callback
141 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-info-volsw-range.html"><span class="phrase">snd_soc_info_volsw_range</span></a></span><span class="refpurpose"> — 
142     single mixer info callback with range.
143 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-put-volsw-range.html"><span class="phrase">snd_soc_put_volsw_range</span></a></span><span class="refpurpose"> — 
144     single mixer put value callback with range.
145 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-get-volsw-range.html"><span class="phrase">snd_soc_get_volsw_range</span></a></span><span class="refpurpose"> — 
146     single mixer get callback with range
147 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-limit-volume.html"><span class="phrase">snd_soc_limit_volume</span></a></span><span class="refpurpose"> — 
148     Set new limit to an existing volume control.
149 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-info-xr-sx.html"><span class="phrase">snd_soc_info_xr_sx</span></a></span><span class="refpurpose"> — 
150     signed multi register info callback
151 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-get-xr-sx.html"><span class="phrase">snd_soc_get_xr_sx</span></a></span><span class="refpurpose"> — 
152     signed multi register get callback
153 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-put-xr-sx.html"><span class="phrase">snd_soc_put_xr_sx</span></a></span><span class="refpurpose"> — 
154     signed multi register get callback
155 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-get-strobe.html"><span class="phrase">snd_soc_get_strobe</span></a></span><span class="refpurpose"> — 
156     strobe get callback
157 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-put-strobe.html"><span class="phrase">snd_soc_put_strobe</span></a></span><span class="refpurpose"> — 
158     strobe put callback
159 </span></dt><dt><span class="refentrytitle"><a href="API-snd-soc-new-compress.html"><span class="phrase">snd_soc_new_compress</span></a></span><span class="refpurpose"> — 
160  create a new compress.
161 </span></dt></dl></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-struct-snd-compr.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="API-struct-snd-soc-jack-pin.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">struct snd_compr</span> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">struct snd_soc_jack_pin</span></td></tr></table></div></body></html>
162