M7350/kernel/arch/arm/mach-msm/qdsp6/audiov2/dal_adie.h
2024-09-09 08:52:07 +00:00

90 lines
2.8 KiB
C

/* Copyright (c) 2009, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
#ifndef _MACH_MSM_QDSP6_ADIE_
#define _MACH_MSM_QDSP6_ADIE_
#include "../dal.h"
#define ADIE_DAL_DEVICE 0x02000029
#define ADIE_DAL_PORT "DAL_AM_AUD"
#define ADIE_DAL_VERSION 0x00010000
enum {
ADIE_OP_SET_PATH = DAL_OP_FIRST_DEVICE_API,
ADIE_OP_PROCEED_TO_STAGE,
ADIE_OP_IOCTL
};
/* Path IDs for normal operation. */
#define ADIE_PATH_HANDSET_TX 0x010740f6
#define ADIE_PATH_HANDSET_RX 0x010740f7
#define ADIE_PATH_HEADSET_MONO_TX 0x010740f8
#define ADIE_PATH_HEADSET_STEREO_TX 0x010740f9
#define ADIE_PATH_HEADSET_MONO_RX 0x010740fa
#define ADIE_PATH_HEADSET_STEREO_RX 0x010740fb
#define ADIE_PATH_SPEAKER_TX 0x010740fc
#define ADIE_PATH_SPEAKER_RX 0x010740fd
#define ADIE_PATH_SPEAKER_STEREO_RX 0x01074101
/* Path IDs used for TTY */
#define ADIE_PATH_TTY_HEADSET_TX 0x010740fe
#define ADIE_PATH_TTY_HEADSET_RX 0x010740ff
/* Path IDs used by Factory Test Mode. */
#define ADIE_PATH_FTM_MIC1_TX 0x01074108
#define ADIE_PATH_FTM_MIC2_TX 0x01074107
#define ADIE_PATH_FTM_HPH_L_RX 0x01074106
#define ADIE_PATH_FTM_HPH_R_RX 0x01074104
#define ADIE_PATH_FTM_EAR_RX 0x01074103
#define ADIE_PATH_FTM_SPKR_RX 0x01074102
/* Path IDs for Loopback */
/* Path IDs used for Line in -> AuxPGA -> Line Out Stereo Mode*/
#define ADIE_PATH_AUXPGA_LINEOUT_STEREO_LB 0x01074100
/* Line in -> AuxPGA -> LineOut Mono */
#define ADIE_PATH_AUXPGA_LINEOUT_MONO_LB 0x01073d82
/* Line in -> AuxPGA -> Stereo Headphone */
#define ADIE_PATH_AUXPGA_HDPH_STEREO_LB 0x01074109
/* Line in -> AuxPGA -> Mono Headphone */
#define ADIE_PATH_AUXPGA_HDPH_MONO_LB 0x01073d85
/* Line in -> AuxPGA -> Earpiece */
#define ADIE_PATH_AUXPGA_EAP_LB 0x01073d81
/* Line in -> AuxPGA -> AuxOut */
#define ADIE_PATH_AUXPGA_AUXOUT_LB 0x01073d86
/* Concurrency Profiles */
#define ADIE_PATH_SPKR_STEREO_HDPH_MONO_RX 0x01073d83
#define ADIE_PATH_SPKR_MONO_HDPH_MONO_RX 0x01073d84
#define ADIE_PATH_SPKR_MONO_HDPH_STEREO_RX 0x01073d88
#define ADIE_PATH_SPKR_STEREO_HDPH_STEREO_RX 0x01073d89
/* stages */
#define ADIE_STAGE_PATH_OFF 0x0050
#define ADIE_STAGE_DIGITAL_READY 0x0100
#define ADIE_STAGE_DIGITAL_ANALOG_READY 0x1000
#define ADIE_STAGE_ANALOG_OFF 0x0750
#define ADIE_STAGE_DIGITAL_OFF 0x0600
/* path types */
#define ADIE_PATH_RX 0
#define ADIE_PATH_TX 1
#define ADIE_PATH_LOOPBACK 2
/* mute states */
#define ADIE_MUTE_OFF 0
#define ADIE_MUTE_ON 1
#endif