|
@@ -684,8 +684,8 @@ static inline void wm_adsp_debugfs_clear(struct wm_adsp *dsp)
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
-static int wm_adsp_fw_get(struct snd_kcontrol *kcontrol,
|
|
|
- struct snd_ctl_elem_value *ucontrol)
|
|
|
+int wm_adsp_fw_get(struct snd_kcontrol *kcontrol,
|
|
|
+ struct snd_ctl_elem_value *ucontrol)
|
|
|
{
|
|
|
struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol);
|
|
|
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
|
|
@@ -695,9 +695,10 @@ static int wm_adsp_fw_get(struct snd_kcontrol *kcontrol,
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
|
+EXPORT_SYMBOL_GPL(wm_adsp_fw_get);
|
|
|
|
|
|
-static int wm_adsp_fw_put(struct snd_kcontrol *kcontrol,
|
|
|
- struct snd_ctl_elem_value *ucontrol)
|
|
|
+int wm_adsp_fw_put(struct snd_kcontrol *kcontrol,
|
|
|
+ struct snd_ctl_elem_value *ucontrol)
|
|
|
{
|
|
|
struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol);
|
|
|
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
|
|
@@ -721,8 +722,9 @@ static int wm_adsp_fw_put(struct snd_kcontrol *kcontrol,
|
|
|
|
|
|
return ret;
|
|
|
}
|
|
|
+EXPORT_SYMBOL_GPL(wm_adsp_fw_put);
|
|
|
|
|
|
-static const struct soc_enum wm_adsp_fw_enum[] = {
|
|
|
+const struct soc_enum wm_adsp_fw_enum[] = {
|
|
|
SOC_ENUM_SINGLE(0, 0, ARRAY_SIZE(wm_adsp_fw_text), wm_adsp_fw_text),
|
|
|
SOC_ENUM_SINGLE(0, 1, ARRAY_SIZE(wm_adsp_fw_text), wm_adsp_fw_text),
|
|
|
SOC_ENUM_SINGLE(0, 2, ARRAY_SIZE(wm_adsp_fw_text), wm_adsp_fw_text),
|
|
@@ -731,24 +733,7 @@ static const struct soc_enum wm_adsp_fw_enum[] = {
|
|
|
SOC_ENUM_SINGLE(0, 5, ARRAY_SIZE(wm_adsp_fw_text), wm_adsp_fw_text),
|
|
|
SOC_ENUM_SINGLE(0, 6, ARRAY_SIZE(wm_adsp_fw_text), wm_adsp_fw_text),
|
|
|
};
|
|
|
-
|
|
|
-const struct snd_kcontrol_new wm_adsp_fw_controls[] = {
|
|
|
- SOC_ENUM_EXT("DSP1 Firmware", wm_adsp_fw_enum[0],
|
|
|
- wm_adsp_fw_get, wm_adsp_fw_put),
|
|
|
- SOC_ENUM_EXT("DSP2 Firmware", wm_adsp_fw_enum[1],
|
|
|
- wm_adsp_fw_get, wm_adsp_fw_put),
|
|
|
- SOC_ENUM_EXT("DSP3 Firmware", wm_adsp_fw_enum[2],
|
|
|
- wm_adsp_fw_get, wm_adsp_fw_put),
|
|
|
- SOC_ENUM_EXT("DSP4 Firmware", wm_adsp_fw_enum[3],
|
|
|
- wm_adsp_fw_get, wm_adsp_fw_put),
|
|
|
- SOC_ENUM_EXT("DSP5 Firmware", wm_adsp_fw_enum[4],
|
|
|
- wm_adsp_fw_get, wm_adsp_fw_put),
|
|
|
- SOC_ENUM_EXT("DSP6 Firmware", wm_adsp_fw_enum[5],
|
|
|
- wm_adsp_fw_get, wm_adsp_fw_put),
|
|
|
- SOC_ENUM_EXT("DSP7 Firmware", wm_adsp_fw_enum[6],
|
|
|
- wm_adsp_fw_get, wm_adsp_fw_put),
|
|
|
-};
|
|
|
-EXPORT_SYMBOL_GPL(wm_adsp_fw_controls);
|
|
|
+EXPORT_SYMBOL_GPL(wm_adsp_fw_enum);
|
|
|
|
|
|
static struct wm_adsp_region const *wm_adsp_find_region(struct wm_adsp *dsp,
|
|
|
int type)
|
|
@@ -2884,9 +2869,7 @@ int wm_adsp2_component_probe(struct wm_adsp *dsp, struct snd_soc_component *comp
|
|
|
|
|
|
dsp->component = component;
|
|
|
|
|
|
- return snd_soc_add_component_controls(component,
|
|
|
- &wm_adsp_fw_controls[dsp->num - 1],
|
|
|
- 1);
|
|
|
+ return 0;
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(wm_adsp2_component_probe);
|
|
|
|