static const char *wm8991_digital_sidetone[] =
 {"None", "Left ADC", "Right ADC", "Reserved"};
 
-static const struct soc_enum wm8991_left_digital_sidetone_enum =
-       SOC_ENUM_SINGLE(WM8991_DIGITAL_SIDE_TONE,
-                       WM8991_ADC_TO_DACL_SHIFT,
-                       WM8991_ADC_TO_DACL_MASK,
-                       wm8991_digital_sidetone);
-
-static const struct soc_enum wm8991_right_digital_sidetone_enum =
-       SOC_ENUM_SINGLE(WM8991_DIGITAL_SIDE_TONE,
-                       WM8991_ADC_TO_DACR_SHIFT,
-                       WM8991_ADC_TO_DACR_MASK,
-                       wm8991_digital_sidetone);
+static SOC_ENUM_SINGLE_DECL(wm8991_left_digital_sidetone_enum,
+                           WM8991_DIGITAL_SIDE_TONE,
+                           WM8991_ADC_TO_DACL_SHIFT,
+                           wm8991_digital_sidetone);
+
+static SOC_ENUM_SINGLE_DECL(wm8991_right_digital_sidetone_enum,
+                           WM8991_DIGITAL_SIDE_TONE,
+                           WM8991_ADC_TO_DACR_SHIFT,
+                           wm8991_digital_sidetone);
 
 static const char *wm8991_adcmode[] =
 {"Hi-fi mode", "Voice mode 1", "Voice mode 2", "Voice mode 3"};
 
-static const struct soc_enum wm8991_right_adcmode_enum =
-       SOC_ENUM_SINGLE(WM8991_ADC_CTRL,
-                       WM8991_ADC_HPF_CUT_SHIFT,
-                       WM8991_ADC_HPF_CUT_MASK,
-                       wm8991_adcmode);
+static SOC_ENUM_SINGLE_DECL(wm8991_right_adcmode_enum,
+                           WM8991_ADC_CTRL,
+                           WM8991_ADC_HPF_CUT_SHIFT,
+                           wm8991_adcmode);
 
 static const struct snd_kcontrol_new wm8991_snd_controls[] = {
        /* INMIXL */
 static const char *wm8991_ainlmux[] =
 {"INMIXL Mix", "RXVOICE Mix", "DIFFINL Mix"};
 
-static const struct soc_enum wm8991_ainlmux_enum =
-       SOC_ENUM_SINGLE(WM8991_INPUT_MIXER1, WM8991_AINLMODE_SHIFT,
-                       ARRAY_SIZE(wm8991_ainlmux), wm8991_ainlmux);
+static SOC_ENUM_SINGLE_DECL(wm8991_ainlmux_enum,
+                           WM8991_INPUT_MIXER1, WM8991_AINLMODE_SHIFT,
+                           wm8991_ainlmux);
 
 static const struct snd_kcontrol_new wm8991_dapm_ainlmux_controls =
        SOC_DAPM_ENUM("Route", wm8991_ainlmux_enum);
 static const char *wm8991_ainrmux[] =
 {"INMIXR Mix", "RXVOICE Mix", "DIFFINR Mix"};
 
-static const struct soc_enum wm8991_ainrmux_enum =
-       SOC_ENUM_SINGLE(WM8991_INPUT_MIXER1, WM8991_AINRMODE_SHIFT,
-                       ARRAY_SIZE(wm8991_ainrmux), wm8991_ainrmux);
+static SOC_ENUM_SINGLE_DECL(wm8991_ainrmux_enum,
+                           WM8991_INPUT_MIXER1, WM8991_AINRMODE_SHIFT,
+                           wm8991_ainrmux);
 
 static const struct snd_kcontrol_new wm8991_dapm_ainrmux_controls =
        SOC_DAPM_ENUM("Route", wm8991_ainrmux_enum);