Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 09f112b2 authored by ty.lee's avatar ty.lee Committed by Android Git Automerger
Browse files

am 1c9f3b09: audio: separate calibration data for TMUS

* commit '1c9f3b09':
  audio: separate calibration data for TMUS
parents a82c5b06 1c9f3b09
Loading
Loading
Loading
Loading
+39 −2
Original line number Diff line number Diff line
@@ -78,11 +78,13 @@ static void s_enable_slow_talk(bool flag);
static void     s_set_voc_rec_mode(uint8_t mode);
static void     s_set_volte_mic_mute(int state);
static void     s_set_volte_volume(int vol);
static bool     s_is_tmus();
#ifdef SEPERATED_AUDIO_INPUT
static void     s_setInput(int);

static int input_source;
#endif
static int mccmnc;
#ifdef QCOM_CSDCLIENT_ENABLED
static void     s_set_csd_handle(void*);
#endif
@@ -1307,6 +1309,8 @@ static void disableDevice(alsa_handle_t *handle)

char *getUCMDevice(uint32_t devices, int input, char *rxDevice)
{
    bool is_tmus = s_is_tmus();

    if (!input) {
        if (!(mDevSettingsFlag & TTY_OFF) &&
            (callMode == AudioSystem::MODE_IN_CALL) &&
@@ -1349,6 +1353,9 @@ char *getUCMDevice(uint32_t devices, int input, char *rxDevice)
#endif
        } else if (devices & AudioSystem::DEVICE_OUT_EARPIECE) {
            if (callMode == AudioSystem::MODE_IN_CALL) {
                if(is_tmus)
                    return strdup(SND_USE_CASE_DEV_VOC_EARPIECE_TMUS); /* Voice HANDSET RX for TMUS */
                else
                    return strdup(SND_USE_CASE_DEV_VOC_EARPIECE); /* Voice HANDSET RX */
            } else
                return strdup(SND_USE_CASE_DEV_EARPIECE); /* HANDSET RX */
@@ -1439,6 +1446,9 @@ char *getUCMDevice(uint32_t devices, int input, char *rxDevice)
#ifdef USES_FLUENCE_INCALL
                    if(callMode == AudioSystem::MODE_IN_CALL) {
                        if (fluence_mode == FLUENCE_MODE_ENDFIRE) {
                            if(is_tmus)
                                return strdup(SND_USE_CASE_DEV_DUAL_MIC_ENDFIRE_TMUS); /* DUALMIC EF TX */
                            else
                                return strdup(SND_USE_CASE_DEV_DUAL_MIC_ENDFIRE); /* DUALMIC EF TX */
                        } else if (fluence_mode == FLUENCE_MODE_BROADSIDE) {
                            return strdup(SND_USE_CASE_DEV_DUAL_MIC_BROADSIDE); /* DUALMIC BS TX */
@@ -1776,4 +1786,31 @@ static void s_set_csd_handle(void* handle)
}
#endif

static bool s_is_tmus()
{
    char value[128];
    bool ret = false;

    if (mccmnc == 0) {
        property_get("gsm.sim.operator.numeric",value,"0");
        mccmnc = atoi(value);
    }

    ALOGD("%s: mnc_mcc :  %d", __FUNCTION__, mccmnc);
    switch(mccmnc)
    {
    //TMUS MCC(310), MNC(490, 260, 026)
    case 310490:
    case 310260:
    case 310026:
        ret = true;
        break;
    default:
        ret = false;
        break;
    }

    return ret;
}

}
+4 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ extern "C" {
#define CAP_TX 0x2
#define CAP_VOICE 0x4
#define DEVICE_HANDSET_RX_ACDB_ID                       7 // HANDSET_SPKR
#define DEVICE_HANDSET_RX_TMUS_ACDB_ID                  81// HANDSET_SPKR
#define DEVICE_HANDSET_TX_ACDB_ID                       4 // HANDSET_MIC
#define DEVICE_SPEAKER_MONO_RX_ACDB_ID                  14// SPKR_PHONE_SPKR_MONO
#define DEVICE_SPEAKER_STEREO_RX_ACDB_ID                15// SPKR_PHONE_SPKR_STEREO
@@ -52,6 +53,7 @@ extern "C" {
#define DEVICE_HEADSET_TX_ACDB_ID                       8 // HEADSET_MIC
#define DEVICE_DUALMIC_HANDSET_TX_BROADSIDE_ACDB_ID     5 // HANDSET_MIC_BROADSIDE
#define DEVICE_DUALMIC_HANDSET_TX_ENDFIRE_ACDB_ID       6 // HANDSET_MIC_ENDFIRE
#define DEVICE_DUALMIC_HANDSET_TX_ENDFIRE_TMUS_ACDB_ID  91// HANDSET_MIC_ENDFIRE
#define DEVICE_DUALMIC_SPEAKER_TX_BROADSIDE_ACDB_ID     12// SPKR_PHONE_MIC_BROADSIDE
#define DEVICE_DUALMIC_SPEAKER_TX_ENDFIRE_ACDB_ID       13// SPKR_PHONE_MIC_ENDFIRE
#define DEVICE_TTY_HEADSET_MONO_RX_ACDB_ID              17// TTY_HEADSET_SPKR
@@ -231,6 +233,7 @@ static card_mapping_t card_mapping_list[] = {
#define SND_USE_CASE_DEV_TTY_HANDSET_ANALOG_TX  "TTY Handset Analog Tx"
#define SND_USE_CASE_DEV_DUAL_MIC_BROADSIDE "DMIC Broadside"
#define SND_USE_CASE_DEV_DUAL_MIC_ENDFIRE "DMIC Endfire"
#define SND_USE_CASE_DEV_DUAL_MIC_ENDFIRE_TMUS "DMIC Endfire TMUS"
#define SND_USE_CASE_DEV_SPEAKER_DUAL_MIC_BROADSIDE "Speaker DMIC Broadside"
#define SND_USE_CASE_DEV_SPEAKER_DUAL_MIC_ENDFIRE "Speaker DMIC Endfire"
#define SND_USE_CASE_DEV_HDMI_TX             "HDMI Tx"
@@ -256,6 +259,7 @@ static card_mapping_t card_mapping_list[] = {
#define SND_USE_CASE_DEV_CAMCORDER_TX       "Camcorder Tx"
#define SND_USE_CASE_DEV_VOICE_RECOGNITION  "Voice Recognition"
#define SND_USE_CASE_DEV_VOC_EARPIECE       "Voice Earpiece"
#define SND_USE_CASE_DEV_VOC_EARPIECE_TMUS  "Voice Earpiece TMUS"
#define SND_USE_CASE_DEV_VOC_HEADPHONE      "Voice Headphones"
#define SND_USE_CASE_DEV_VOC_HEADSET        "Voice Headset"
#define SND_USE_CASE_DEV_VOC_ANC_HEADSET    "Voice ANC Headset"