blob: 70edcead0bcc0edd5c55abd5c20bb3d0d553bf6b [file] [log] [blame]
/*
* Copyright (C) 2017 The Android Open Source Project
* Copyright (C) 2023 The LineageOS Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef __SECRIL_CLIENT_H__
#define __SECRIL_CLIENT_H__
typedef enum _SoundType {
SOUND_TYPE_NONE,
SOUND_TYPE_VOICE,
SOUND_TYPE_SPEAKER,
SOUND_TYPE_HEADSET,
SOUND_TYPE_BTVOICE
} SoundType;
typedef enum _AudioPath {
SOUND_AUDIO_PATH_NONE = 0,
SOUND_AUDIO_PATH_HANDSET = 1,
SOUND_AUDIO_PATH_HEADSET = 2,
SOUND_AUDIO_PATH_HANDSFREE = 3,
SOUND_AUDIO_PATH_BLUETOOTH = 4,
SOUND_AUDIO_PATH_STEREO_BLUETOOTH = 5,
SOUND_AUDIO_PATH_SPEAKRERPHONE = 6,
SOUND_AUDIO_PATH_35PI_HEADSET = 7,
SOUND_AUDIO_PATH_BT_NS_EC_OFF = 8,
SOUND_AUDIO_PATH_WB_BLUETOOTH = 9,
SOUND_AUDIO_PATH_WB_BT_NS_EC_OFF = 10,
SOUND_AUDIO_PATH_HANDSET_HAC = 11,
SOUND_AUDIO_PATH_LINEOUT = 12,
SOUND_AUDIO_PATH_VOLTE_HANDSET = 65,
SOUND_AUDIO_PATH_VOLTE_HEADSET = 66,
SOUND_AUDIO_PATH_VOLTE_HFK = 67,
SOUND_AUDIO_PATH_VOLTE_BLUETOOTH = 68,
SOUND_AUDIO_PATH_VOLTE_STEREO_BLUETOOTH = 69,
SOUND_AUDIO_PATH_VOLTE_SPEAKRERPHONE = 70,
SOUND_AUDIO_PATH_VOLTE_35PI_HEADSET = 71,
SOUND_AUDIO_PATH_VOLTE_BT_NS_EC_OFF = 72,
SOUND_AUDIO_PATH_VOLTE_WB_BLUETOOTH = 73,
SOUND_AUDIO_PATH_VOLTE_WB_BT_NS_EC_OFF = 74,
SOUND_AUDIO_PATH_VOLTE_HANDSET_HAC = 75,
SOUND_AUDIO_PATH_VOLTE_LINEOUT = 76,
SOUND_AUDIO_PATH_MAX
} AudioPath;
/* Voice Audio Multi-MIC */
enum ril_audio_multimic {
VOICE_MULTI_MIC_OFF,
VOICE_MULTI_MIC_ON,
};
typedef enum _ExtraVolume {
ORIGINAL_PATH,
EXTRA_VOLUME_PATH,
EMERGENCY_PATH
} ExtraVolume;
typedef enum _SoundClockCondition {
SOUND_CLOCK_STOP,
SOUND_CLOCK_START
} SoundClockCondition;
typedef enum _MuteCondition {
TX_UNMUTE, /* 0x00: TX UnMute */
TX_MUTE, /* 0x01: TX Mute */
RX_UNMUTE, /* 0x02: RX UnMute */
RX_MUTE, /* 0x03: RX Mute */
RXTX_UNMUTE, /* 0x04: RXTX UnMute */
RXTX_MUTE, /* 0x05: RXTX Mute */
} MuteCondition;
enum ril_audio_clockmode {
VOICE_AUDIO_TURN_OFF_I2S,
VOICE_AUDIO_TURN_ON_I2S
};
/* Voice Call Mode */
enum voice_call_mode {
VOICE_CALL_NONE = 0,
VOICE_CALL_CS, // CS(Circit Switched) Call
VOICE_CALL_PS, // PS(Packet Switched) Call
VOICE_CALL_MAX,
};
/* Event from RIL Audio Client */
#define VOICE_AUDIO_EVENT_BASE 10000
#define VOICE_AUDIO_EVENT_RINGBACK_STATE_CHANGED (VOICE_AUDIO_EVENT_BASE + 1)
#define VOICE_AUDIO_EVENT_IMS_SRVCC_HANDOVER (VOICE_AUDIO_EVENT_BASE + 2)
#endif // __SECRIL_CLIENT_H__