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);