Path: blob/master/sound/soc/codecs/88pm860x-codec.h
10817 views
/*1* 88pm860x-codec.h -- 88PM860x ALSA SoC Audio Driver2*3* Copyright 2010 Marvell International Ltd.4* Haojian Zhuang <[email protected]>5*6* This program is free software; you can redistribute it and/or modify7* it under the terms of the GNU General Public License version 2 as8* published by the Free Software Foundation.9*/1011#ifndef __88PM860X_H12#define __88PM860X_H1314/* The offset of these registers are 0xb0 */15#define PM860X_PCM_IFACE_1 0x0016#define PM860X_PCM_IFACE_2 0x0117#define PM860X_PCM_IFACE_3 0x0218#define PM860X_PCM_RATE 0x0319#define PM860X_EC_PATH 0x0420#define PM860X_SIDETONE_L_GAIN 0x0521#define PM860X_SIDETONE_R_GAIN 0x0622#define PM860X_SIDETONE_SHIFT 0x0723#define PM860X_ADC_OFFSET_1 0x0824#define PM860X_ADC_OFFSET_2 0x0925#define PM860X_DMIC_DELAY 0x0a2627#define PM860X_I2S_IFACE_1 0x0b28#define PM860X_I2S_IFACE_2 0x0c29#define PM860X_I2S_IFACE_3 0x0d30#define PM860X_I2S_IFACE_4 0x0e31#define PM860X_EQUALIZER_N0_1 0x0f32#define PM860X_EQUALIZER_N0_2 0x1033#define PM860X_EQUALIZER_N1_1 0x1134#define PM860X_EQUALIZER_N1_2 0x1235#define PM860X_EQUALIZER_D1_1 0x1336#define PM860X_EQUALIZER_D1_2 0x1437#define PM860X_LOFI_GAIN_LEFT 0x1538#define PM860X_LOFI_GAIN_RIGHT 0x1639#define PM860X_HIFIL_GAIN_LEFT 0x1740#define PM860X_HIFIL_GAIN_RIGHT 0x1841#define PM860X_HIFIR_GAIN_LEFT 0x1942#define PM860X_HIFIR_GAIN_RIGHT 0x1a43#define PM860X_DAC_OFFSET 0x1b44#define PM860X_OFFSET_LEFT_1 0x1c45#define PM860X_OFFSET_LEFT_2 0x1d46#define PM860X_OFFSET_RIGHT_1 0x1e47#define PM860X_OFFSET_RIGHT_2 0x1f48#define PM860X_ADC_ANA_1 0x2049#define PM860X_ADC_ANA_2 0x2150#define PM860X_ADC_ANA_3 0x2251#define PM860X_ADC_ANA_4 0x2352#define PM860X_ANA_TO_ANA 0x2453#define PM860X_HS1_CTRL 0x2554#define PM860X_HS2_CTRL 0x2655#define PM860X_LO1_CTRL 0x2756#define PM860X_LO2_CTRL 0x2857#define PM860X_EAR_CTRL_1 0x2958#define PM860X_EAR_CTRL_2 0x2a59#define PM860X_AUDIO_SUPPLIES_1 0x2b60#define PM860X_AUDIO_SUPPLIES_2 0x2c61#define PM860X_ADC_EN_1 0x2d62#define PM860X_ADC_EN_2 0x2e63#define PM860X_DAC_EN_1 0x2f64#define PM860X_DAC_EN_2 0x3165#define PM860X_AUDIO_CAL_1 0x3266#define PM860X_AUDIO_CAL_2 0x3367#define PM860X_AUDIO_CAL_3 0x3468#define PM860X_AUDIO_CAL_4 0x3569#define PM860X_AUDIO_CAL_5 0x3670#define PM860X_ANA_INPUT_SEL_1 0x3771#define PM860X_ANA_INPUT_SEL_2 0x387273#define PM860X_PCM_IFACE_4 0x3974#define PM860X_I2S_IFACE_5 0x3a7576#define PM860X_SHORTS 0x3b77#define PM860X_PLL_ADJ_1 0x3c78#define PM860X_PLL_ADJ_2 0x3d7980/* bits definition */81#define PM860X_CLK_DIR_IN 082#define PM860X_CLK_DIR_OUT 18384#define PM860X_DET_HEADSET (1 << 0)85#define PM860X_DET_MIC (1 << 1)86#define PM860X_DET_HOOK (1 << 2)87#define PM860X_SHORT_HEADSET (1 << 3)88#define PM860X_SHORT_LINEOUT (1 << 4)89#define PM860X_DET_MASK 0x1F9091extern int pm860x_hs_jack_detect(struct snd_soc_codec *, struct snd_soc_jack *,92int, int, int, int);93extern int pm860x_mic_jack_detect(struct snd_soc_codec *, struct snd_soc_jack *,94int);9596#endif /* __88PM860X_H */979899