aboutsummaryrefslogtreecommitdiffstats
path: root/include/sound
diff options
context:
space:
mode:
Diffstat (limited to 'include/sound')
-rw-r--r--include/sound/soc-dapm.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/sound/soc-dapm.h b/include/sound/soc-dapm.h
index d26a9b78477..bfa0d3cbbf2 100644
--- a/include/sound/soc-dapm.h
+++ b/include/sound/soc-dapm.h
@@ -243,6 +243,10 @@
243{ .id = snd_soc_dapm_supply, .name = wname, .reg = wreg, \ 243{ .id = snd_soc_dapm_supply, .name = wname, .reg = wreg, \
244 .shift = wshift, .invert = winvert, .event = wevent, \ 244 .shift = wshift, .invert = winvert, .event = wevent, \
245 .event_flags = wflags} 245 .event_flags = wflags}
246#define SND_SOC_DAPM_REGULATOR_SUPPLY(wname, wdelay) \
247{ .id = snd_soc_dapm_regulator_supply, .name = wname, \
248 .reg = SND_SOC_NOPM, .shift = wdelay, .event = dapm_regulator_event, \
249 .event_flags = SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD }
246 250
247/* dapm kcontrol types */ 251/* dapm kcontrol types */
248#define SOC_DAPM_SINGLE(xname, reg, shift, max, invert) \ 252#define SOC_DAPM_SINGLE(xname, reg, shift, max, invert) \
@@ -322,6 +326,8 @@ struct snd_soc_dapm_context;
322 326
323int dapm_reg_event(struct snd_soc_dapm_widget *w, 327int dapm_reg_event(struct snd_soc_dapm_widget *w,
324 struct snd_kcontrol *kcontrol, int event); 328 struct snd_kcontrol *kcontrol, int event);
329int dapm_regulator_event(struct snd_soc_dapm_widget *w,
330 struct snd_kcontrol *kcontrol, int event);
325 331
326/* dapm controls */ 332/* dapm controls */
327int snd_soc_dapm_put_volsw(struct snd_kcontrol *kcontrol, 333int snd_soc_dapm_put_volsw(struct snd_kcontrol *kcontrol,
@@ -411,6 +417,7 @@ enum snd_soc_dapm_type {
411 snd_soc_dapm_pre, /* machine specific pre widget - exec first */ 417 snd_soc_dapm_pre, /* machine specific pre widget - exec first */
412 snd_soc_dapm_post, /* machine specific post widget - exec last */ 418 snd_soc_dapm_post, /* machine specific post widget - exec last */
413 snd_soc_dapm_supply, /* power/clock supply */ 419 snd_soc_dapm_supply, /* power/clock supply */
420 snd_soc_dapm_regulator_supply, /* external regulator */
414 snd_soc_dapm_aif_in, /* audio interface input */ 421 snd_soc_dapm_aif_in, /* audio interface input */
415 snd_soc_dapm_aif_out, /* audio interface output */ 422 snd_soc_dapm_aif_out, /* audio interface output */
416 snd_soc_dapm_siggen, /* signal generator */ 423 snd_soc_dapm_siggen, /* signal generator */
@@ -465,6 +472,8 @@ struct snd_soc_dapm_widget {
465 struct list_head list; 472 struct list_head list;
466 struct snd_soc_dapm_context *dapm; 473 struct snd_soc_dapm_context *dapm;
467 474
475 void *priv; /* widget specific data */
476
468 /* dapm control */ 477 /* dapm control */
469 short reg; /* negative reg = no direct dapm */ 478 short reg; /* negative reg = no direct dapm */
470 unsigned char shift; /* bits to shift */ 479 unsigned char shift; /* bits to shift */