summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/eq_menu.c15
-rw-r--r--apps/eq_menu.h1
-rw-r--r--apps/settings.c4
3 files changed, 15 insertions, 5 deletions
diff --git a/apps/eq_menu.c b/apps/eq_menu.c
index 0743490723..7bd6e814ce 100644
--- a/apps/eq_menu.c
+++ b/apps/eq_menu.c
@@ -1004,13 +1004,10 @@ static bool eq_hw_set_band4_gain(void)
return result;
}
-static bool eq_hw_enabled(void)
+void eq_hw_enable(bool enable)
{
- bool result = set_bool(str(LANG_EQUALIZER_HARDWARE_ENABLED),
- &global_settings.eq_hw_enabled);
-
#ifndef SIMULATOR
- if (global_settings.eq_hw_enabled) {
+ if (enable) {
wmcodec_set_equalizer_band(0, global_settings.eq_hw_band0_cutoff,
0, global_settings.eq_hw_band0_gain);
wmcodec_set_equalizer_band(1, global_settings.eq_hw_band1_center,
@@ -1035,6 +1032,14 @@ static bool eq_hw_enabled(void)
wmcodec_set_equalizer_band(4, global_settings.eq_hw_band4_cutoff, 0, 0);
}
#endif
+}
+
+static bool eq_hw_enabled(void)
+{
+ bool result = set_bool(str(LANG_EQUALIZER_HARDWARE_ENABLED),
+ &global_settings.eq_hw_enabled);
+
+ eq_hw_enable(global_settings.eq_hw_enabled);
return result;
}
diff --git a/apps/eq_menu.h b/apps/eq_menu.h
index 928a97238a..e432ea91e3 100644
--- a/apps/eq_menu.h
+++ b/apps/eq_menu.h
@@ -27,6 +27,7 @@ bool eq_menu_graphical(void);
bool eq_menu(void);
#ifdef HAVE_WM8758
bool eq_hw_menu(void);
+void eq_hw_enable(bool enable);
#endif
#endif
diff --git a/apps/settings.c b/apps/settings.c
index d298ec8d60..778d99f4e9 100644
--- a/apps/settings.c
+++ b/apps/settings.c
@@ -1242,6 +1242,10 @@ void settings_apply(void)
}
#endif
+#ifdef HAVE_WM8758
+ eq_hw_enable(global_settings.eq_hw_enabled);
+#endif
+
#ifdef HAVE_SPDIF_POWER
spdif_power_enable(global_settings.spdif_enable);
#endif