From 02aeec67aca18ec461a1052c6dffe38b21a0ff2d Mon Sep 17 00:00:00 2001 From: sbrissen Date: Sat, 22 Feb 2014 17:11:32 -0500 Subject: kona: update audio and configs each variant has slightly different audio paths Change-Id: Ice72221072eccc18731a4ddc1ac5f8c2b76bf955 --- audio/audio_hw.c | 22 ++-- audio/audio_hw.h | 59 ++++----- configs/Android.mk | 5 +- configs/n5100.xml | 341 ++++++++++++++++++++++++++++++++++++++++++++++++++ configs/n5110.xml | 340 +++++++++++++++++++++++++++++++++++++++++++++++++ configs/n5120.xml | 354 ++++++++++++++++++++++++++++++++++++++++++++++++++++ configs/tiny_hw.xml | 340 ------------------------------------------------- 7 files changed, 1079 insertions(+), 382 deletions(-) create mode 100755 configs/n5100.xml create mode 100755 configs/n5110.xml create mode 100755 configs/n5120.xml delete mode 100755 configs/tiny_hw.xml diff --git a/audio/audio_hw.c b/audio/audio_hw.c index 260292f..eafcd82 100755 --- a/audio/audio_hw.c +++ b/audio/audio_hw.c @@ -19,7 +19,7 @@ */ #define LOG_TAG "audio_hw_primary" -#define LOG_NDEBUG 0 +//#define LOG_NDEBUG 0 #include #include @@ -230,14 +230,14 @@ static int set_bigroute_by_array(struct mixer *mixer, struct route_setting *rout if (ret != 0) { ALOGE("Failed to set '%s' to '%s'\n", route[i].ctl_name, route[i].strval); } else { - ALOGV("Set '%s' to '%s'\n", route[i].ctl_name, route[i].strval); + //ALOGV("Set '%s' to '%s'\n", route[i].ctl_name, route[i].strval); } } else { ret = mixer_ctl_set_enum_by_string(ctl, "Off"); if (ret != 0) { ALOGE("Failed to set '%s' to '%s'\n", route[i].ctl_name, route[i].strval); } else { - ALOGV("Set '%s' to '%s'\n", route[i].ctl_name, "Off"); + //ALOGV("Set '%s' to '%s'\n", route[i].ctl_name, "Off"); } } } else { @@ -248,14 +248,14 @@ static int set_bigroute_by_array(struct mixer *mixer, struct route_setting *rout if (ret != 0) { ALOGE("Failed to set '%s' to '%d'\n", route[i].ctl_name, route[i].intval); } else { - ALOGV("Set '%s' to '%d'\n", route[i].ctl_name, route[i].intval); + //ALOGV("Set '%s' to '%d'\n", route[i].ctl_name, route[i].intval); } } else { ret = mixer_ctl_set_value(ctl, j, 0); if (ret != 0) { ALOGE("Failed to set '%s' to '%d'\n", route[i].ctl_name, route[i].intval); } else { - ALOGV("Set '%s' to '%d'\n", route[i].ctl_name, 0); + //ALOGV("Set '%s' to '%d'\n", route[i].ctl_name, 0); } } } @@ -300,8 +300,8 @@ static int set_route_by_array(struct mixer *mixer, struct route_setting *route, ALOGE("Failed to set '%s'.%d to %d\n", route[i].ctl_name, j, route[i].intval); } else { - ALOGV("Set '%s'.%d to %d\n", - route[i].ctl_name, j, route[i].intval); + //ALOGV("Set '%s'.%d to %d\n", + //route[i].ctl_name, j, route[i].intval); } } } @@ -709,12 +709,16 @@ static void select_output_device(struct m0_audio_device *adev) static void select_input_device(struct m0_audio_device *adev) { - switch(adev->in_device) { + int input_device = AUDIO_DEVICE_BIT_IN | adev->in_device; + + switch(input_device) { case AUDIO_DEVICE_IN_BUILTIN_MIC: ALOGD("%s: AUDIO_DEVICE_IN_BUILTIN_MIC", __func__); break; case AUDIO_DEVICE_IN_BACK_MIC: ALOGD("%s: AUDIO_DEVICE_IN_BACK_MIC", __func__); + // Force use both mics for video recording + adev->in_device = (AUDIO_DEVICE_IN_BACK_MIC | AUDIO_DEVICE_IN_BUILTIN_MIC) & ~AUDIO_DEVICE_BIT_IN; break; case AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET: ALOGD("%s: AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET", __func__); @@ -2872,7 +2876,7 @@ static void adev_config_start(void *data, const XML_Char *elem, return; } - ALOGV("Parsing control %s => %s\n", name, val); + //ALOGV("Parsing control %s => %s\n", name, val); r = realloc(s->path, sizeof(*r) * (s->path_len + 1)); if (!r) { diff --git a/audio/audio_hw.h b/audio/audio_hw.h index 4dd6038..db02a4f 100644 --- a/audio/audio_hw.h +++ b/audio/audio_hw.h @@ -116,8 +116,6 @@ struct route_setting }; struct route_setting voicecall_default[] = { - { .ctl_name = "AIF2DACL Source", .intval = 0, }, - { .ctl_name = "AIF2DACR Source", .intval = 0, }, { .ctl_name = "AIF2 Mode", .intval = 0, }, { .ctl_name = "DAC1L Mixer AIF1.1 Switch", .intval = 1, }, { .ctl_name = "DAC1R Mixer AIF1.1 Switch", .intval = 1, }, @@ -128,14 +126,12 @@ struct route_setting voicecall_default[] = { }; struct route_setting voicecall_default_disable[] = { - { .ctl_name = "AIF2DACL Source", .intval = 0, }, - { .ctl_name = "AIF2DACR Source", .intval = 1, }, { .ctl_name = "AIF2 Mode", .intval = 0, }, { .ctl_name = "DAC1L Mixer AIF2 Switch", .intval = 0, }, { .ctl_name = "DAC1R Mixer AIF2 Switch", .intval = 0, }, { .ctl_name = "AIF2DAC Mux", .strval = "AIF3DACDAT", }, { .ctl_name = "Main Mic Switch", .intval = 0, }, - { .ctl_name = "MIXINL IN1L Switch", .intval = 0, }, + { .ctl_name = "MIXINL IN2L Switch", .intval = 0, }, { .ctl_name = "Sub Mic Switch", .intval = 0, }, { .ctl_name = "MIXINR IN1R Switch", .intval = 0, }, { .ctl_name = NULL, }, @@ -143,43 +139,50 @@ struct route_setting voicecall_default_disable[] = { struct route_setting default_input[] = { { .ctl_name = "Main Mic Switch", .intval = 1, }, - { .ctl_name = "IN1L Volume", .intval = 30, }, + { .ctl_name = "AIF1ADCL Source", .intval = 1, }, { .ctl_name = "MIXINL IN1L Switch", .intval = 1, }, - { .ctl_name = "MIXINL IN1L Volume", .intval = 0, }, - { .ctl_name = "AIF1ADC1 HPF Mode", .intval = 0, }, + { .ctl_name = "AIF1ADC1 HPF Mode", .intval = 1, }, { .ctl_name = "AIF1ADC1 HPF Switch", .intval = 1, }, + { .ctl_name = "IN1L Volume", .intval = 28, }, + { .ctl_name = "MIXINL IN1L Volume", .intval = 0, }, + { .ctl_name = "AIF1ADC1 Volume", .intval = 96, }, + { .ctl_name = "Submic ADC invert", .intval = 0, }, { .ctl_name = NULL, }, }; struct route_setting default_input_disable[] = { { .ctl_name = "Main Mic Switch", .intval = 0, }, - { .ctl_name = "IN1L Volume", .intval = 22, }, { .ctl_name = "MIXINL IN1L Switch", .intval = 0, }, + { .ctl_name = "AIF1ADC1 HPF Mode", .intval = 0, }, { .ctl_name = "AIF1ADC1 HPF Switch", .intval = 0, }, + { .ctl_name = "IN1L Volume", .intval = 30, }, + { .ctl_name = "MIXINL IN1L Volume", .intval = 0, }, + { .ctl_name = "AIF1ADC1 Volume", .intval = 120, }, { .ctl_name = NULL, }, }; struct route_setting headset_input[] = { - { .ctl_name = "MIXINL IN1L Switch", .intval = 0, }, - { .ctl_name = "MIXINR IN1R Switch", .intval = 0, }, { .ctl_name = "Headset Mic Switch", .intval = 1, }, - { .ctl_name = "IN2L Volume", .intval = 18, }, - { .ctl_name = "MIXINL IN2L Switch", .intval = 1, }, - { .ctl_name = "MIXINL IN2L Volume", .intval = 0, }, + { .ctl_name = "AIF1ADCL Source", .intval = 1, }, + { .ctl_name = "AIF1ADCR Source", .intval = 1, }, + { .ctl_name = "MIXINR IN1R Switch", .intval = 1, }, { .ctl_name = "AIF1ADC1 HPF Mode", .intval = 1, }, { .ctl_name = "AIF1ADC1 HPF Switch", .intval = 1, }, + { .ctl_name = "IN1R Volume", .intval = 28, }, + { .ctl_name = "MIXINR IN1R Volume", .intval = 0, }, { .ctl_name = "AIF1ADC1 Volume", .intval = 96, }, - { .ctl_name = "AIF1ADCL Source", .intval = 0, }, - { .ctl_name = "AIF1ADCR Source", .intval = 0, }, - { .ctl_name = "AIF2ADCL Source", .intval = 0, }, + { .ctl_name = "Submic ADC invert", .intval = 0, }, { .ctl_name = NULL, }, }; struct route_setting headset_input_disable[] = { { .ctl_name = "Headset Mic Switch", .intval = 0, }, - { .ctl_name = "MIXINL IN2L Switch", .intval = 0, }, + { .ctl_name = "MIXINR IN1R Switch", .intval = 0, }, { .ctl_name = "AIF1ADC1 HPF Mode", .intval = 0, }, { .ctl_name = "AIF1ADC1 HPF Switch", .intval = 0, }, + { .ctl_name = "IN1R Volume", .intval = 11, }, + { .ctl_name = "MIXINR IN1R Volume", .intval = 0, }, + { .ctl_name = "AIF1ADC1 Volume", .intval = 96, }, { .ctl_name = NULL, }, }; @@ -211,27 +214,25 @@ struct route_setting bt_input[] = { { .ctl_name = "AIF2ADC Mux", .intval = 1, }, { .ctl_name = "AIF1ADCL Source", .intval = 0, }, { .ctl_name = "AIF1ADCR Source", .intval = 1, }, - { .ctl_name = "AIF2ADCL Source", .intval = 0, }, - { .ctl_name = "AIF2ADCR Source", .intval = 1, }, - { .ctl_name = "DAC1L Mixer AIF2 Switch", .intval = 1, }, - { .ctl_name = "DAC1R Mixer AIF2 Switch", .intval = 1, }, { .ctl_name = "AIF1ADC1R Mixer AIF2 Switch", .intval = 1, }, { .ctl_name = "AIF1ADC1L Mixer AIF2 Switch", .intval = 1, }, { .ctl_name = "AIF1ADC1 Volume", .intval = 96, }, { .ctl_name = "AIF2DAC Volume", .intval = 96, }, + { .ctl_name = "Submic ADC invert", .intval = 0, }, { .ctl_name = NULL, }, }; struct route_setting bt_disable[] = { { .ctl_name = "AIF2ADC Mux", .intval = 0, }, - { .ctl_name = "MIXINL IN2L Volume", .intval = 0, }, - { .ctl_name = "LINEOUT1N Switch", .intval = 1, }, - { .ctl_name = "LINEOUT1P Switch", .intval = 1, }, - { .ctl_name = "AIF2ADC HPF Mode", .intval = 0, }, - { .ctl_name = "AIF2ADC HPF Switch", .intval = 0, }, - { .ctl_name = "AIF2DAC2R Mixer AIF2 Switch", .intval = 0, }, - { .ctl_name = "AIF2DAC2L Mixer AIF2 Switch", .intval = 0, }, { .ctl_name = "AIF1ADC1R Mixer AIF2 Switch", .intval = 0, }, { .ctl_name = "AIF1ADC1L Mixer AIF2 Switch", .intval = 0, }, + { .ctl_name = "AIF1ADC1 Volume", .intval = 96, }, + { .ctl_name = "AIF2DAC Volume", .intval = 96, }, + { .ctl_name = "AIF2DAC2L Mixer AIF1.1 Switch", .intval = 0, }, + { .ctl_name = "AIF2DAC2R Mixer AIF1.1 Switch", .intval = 0, }, + { .ctl_name = "AIF1DAC1 Volume", .intval = 96, }, + { .ctl_name = "AIF1 Boost Volume", .intval = 0, }, + { .ctl_name = "DAC2 Volume", .intval = 96, }, + { .ctl_name = "AIF2DAC Volume", .intval = 96, }, { .ctl_name = NULL, }, }; diff --git a/configs/Android.mk b/configs/Android.mk index aba94af..05eb1e8 100644 --- a/configs/Android.mk +++ b/configs/Android.mk @@ -1,14 +1,11 @@ -ifneq ($(filter n5100 n5110,$(TARGET_DEVICE)),) LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := tiny_hw LOCAL_MODULE_OWNER := samsung -LOCAL_SRC_FILES := tiny_hw.xml +LOCAL_SRC_FILES := $(TARGET_DEVICE).xml LOCAL_MODULE_TAGS := optional LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_SUFFIX := .xml LOCAL_MODULE_PATH := $(TARGET_OUT)/etc/sound include $(BUILD_PREBUILT) - -endif \ No newline at end of file diff --git a/configs/n5100.xml b/configs/n5100.xml new file mode 100755 index 0000000..ba25662 --- /dev/null +++ b/configs/n5100.xml @@ -0,0 +1,341 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/configs/n5110.xml b/configs/n5110.xml new file mode 100755 index 0000000..9d186b2 --- /dev/null +++ b/configs/n5110.xml @@ -0,0 +1,340 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/configs/n5120.xml b/configs/n5120.xml new file mode 100755 index 0000000..014d1a6 --- /dev/null +++ b/configs/n5120.xml @@ -0,0 +1,354 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/configs/tiny_hw.xml b/configs/tiny_hw.xml deleted file mode 100755 index 16868a5..0000000 --- a/configs/tiny_hw.xml +++ /dev/null @@ -1,340 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file -- cgit v1.2.3