summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDiogo Ferreira <defer@cyngn.com>2016-09-09 14:18:06 +0100
committerDiogo Ferreira <defer@cyngn.com>2016-09-09 15:18:40 +0100
commitf0dd6128ace9d86e86c83df783299bb8f2fabee1 (patch)
treea46ec075066af06a920e93fc5b502bfd0a0b0537
parentbf8c1abdcc53b2ad7228eba42fbff798e81d7e24 (diff)
downloadandroid_hardware_qcom_audio-f0dd6128ace9d86e86c83df783299bb8f2fabee1.tar.gz
android_hardware_qcom_audio-f0dd6128ace9d86e86c83df783299bb8f2fabee1.tar.bz2
android_hardware_qcom_audio-f0dd6128ace9d86e86c83df783299bb8f2fabee1.zip
msm8937: acdb: Make acdb reloading optional
Some acdb loader libraries don't have acdb reload capabilities and will fail to initialize and cause all sorts of audio issues. This patch makes reloading conditional to its presence in the acdb loader library and only supports the function in those cases. Change-Id: I3b60e5e652d09f27712a51d02106cde4f15901a2 Ticket: CYNGNOS-3285
-rw-r--r--hal/msm8916/platform.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/hal/msm8916/platform.c b/hal/msm8916/platform.c
index 9a414a4b..4206f903 100644
--- a/hal/msm8916/platform.c
+++ b/hal/msm8916/platform.c
@@ -1912,8 +1912,7 @@ void *platform_init(struct audio_device *adev)
my_data->acdb_reload = (acdb_reload_t)dlsym(my_data->acdb_handle,
"acdb_loader_reload_acdb_files");
if (my_data->acdb_reload == NULL) {
- ALOGE("%s: dlsym error %s for acdb_loader_reload_acdb_files", __func__, dlerror());
- goto acdb_init_fail;
+ ALOGW("%s: dlsym error %s for acdb_loader_reload_acdb_files, reloading will not be available", __func__, dlerror());
}
platform_acdb_init(my_data);
}
@@ -3640,7 +3639,7 @@ int platform_set_parameters(void *platform, struct str_parms *parms)
err = str_parms_get_str(parms, AUDIO_PARAMETER_KEY_RELOAD_ACDB,
value, sizeof(value));
- if (err >= 0) {
+ if (err >= 0 && my_data->acdb_reload != NULL) {
str_parms_del(parms, AUDIO_PARAMETER_KEY_RELOAD_ACDB);
my_data->acdb_reload(value, my_data->snd_card_name,