ASoC: core - improve probe/remove ordering
To be SQUASHED
Signed-off-by: Liam Girdwood <lrg@ti.com>
diff --git a/include/sound/soc.h b/include/sound/soc.h
index 1885104..5b5de41 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -202,6 +202,15 @@
#define SOC_VALUE_ENUM_SINGLE_DECL(name, xreg, xshift, xmask, xtexts, xvalues) \
SOC_VALUE_ENUM_DOUBLE_DECL(name, xreg, xshift, xshift, xmask, xtexts, xvalues)
+/*
+ * Component probe and remove ordering levels for components with runtime
+ * dependencies.
+ */
+#define SND_SOC_COMP_ORDER_FIRST -2
+#define SND_SOC_COMP_ORDER_EARLY -1
+#define SND_SOC_COMP_ORDER_NORMAL 0
+#define SND_SOC_COMP_ORDER_LATE 1
+#define SND_SOC_COMP_ORDER_LAST 2
/* DAI Link Host Mode Support */
#define SND_SOC_DAI_LINK_NO_HOST 0x1
@@ -640,8 +649,8 @@
enum snd_soc_dapm_type, int);
/* probe ordering - for components with runtime dependencies */
- bool late_probe;
- bool early_remove;
+ int probe_order;
+ int remove_order;
/* codec stream completion event */
int (*stream_event)(struct snd_soc_dapm_context *dapm);
@@ -670,8 +679,8 @@
struct snd_pcm_ops *ops;
/* probe ordering - for components with runtime dependencies */
- bool late_probe;
- bool early_remove;
+ int probe_order;
+ int remove_order;
int (*stream_event)(struct snd_soc_dapm_context *dapm);
int (*bespoke_trigger)(struct snd_pcm_substream *, int);