Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
c31b71de
R
raspberrypi-kernel
项目概览
openeuler
/
raspberrypi-kernel
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
raspberrypi-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
c31b71de
编写于
1月 10, 2013
作者:
M
Mark Brown
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'asoc/fix/lm49453' into tmp
上级
fa17cb4a
9dc754df
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
40 addition
and
66 deletion
+40
-66
sound/soc/codecs/lm49453.c
sound/soc/codecs/lm49453.c
+40
-66
未找到文件。
sound/soc/codecs/lm49453.c
浏览文件 @
c31b71de
...
...
@@ -111,9 +111,9 @@ static struct reg_default lm49453_reg_defs[] = {
{
101
,
0x00
},
{
102
,
0x00
},
{
103
,
0x01
},
{
10
5
,
0x01
},
{
10
6
,
0x00
},
{
10
7
,
0x01
},
{
10
4
,
0x01
},
{
10
5
,
0x00
},
{
10
6
,
0x01
},
{
107
,
0x00
},
{
108
,
0x00
},
{
109
,
0x00
},
...
...
@@ -163,56 +163,25 @@ static struct reg_default lm49453_reg_defs[] = {
{
184
,
0x00
},
{
185
,
0x00
},
{
186
,
0x00
},
{
18
9
,
0x00
},
{
18
7
,
0x00
},
{
188
,
0x00
},
{
194
,
0x00
},
{
195
,
0x00
},
{
196
,
0x00
},
{
197
,
0x00
},
{
200
,
0x00
},
{
201
,
0x00
},
{
202
,
0x00
},
{
203
,
0x00
},
{
204
,
0x00
},
{
205
,
0x00
},
{
208
,
0x00
},
{
189
,
0x00
},
{
208
,
0x06
},
{
209
,
0x00
},
{
210
,
0x00
},
{
211
,
0x00
},
{
213
,
0x00
},
{
214
,
0x00
},
{
215
,
0x00
},
{
216
,
0x00
},
{
217
,
0x00
},
{
218
,
0x00
},
{
219
,
0x00
},
{
210
,
0x08
},
{
211
,
0x54
},
{
212
,
0x14
},
{
213
,
0x0d
},
{
214
,
0x0d
},
{
215
,
0x14
},
{
216
,
0x60
},
{
221
,
0x00
},
{
222
,
0x00
},
{
223
,
0x00
},
{
224
,
0x00
},
{
225
,
0x00
},
{
226
,
0x00
},
{
227
,
0x00
},
{
228
,
0x00
},
{
229
,
0x00
},
{
230
,
0x13
},
{
231
,
0x00
},
{
232
,
0x80
},
{
233
,
0x0C
},
{
234
,
0xDD
},
{
235
,
0x00
},
{
236
,
0x04
},
{
237
,
0x00
},
{
238
,
0x00
},
{
239
,
0x00
},
{
240
,
0x00
},
{
241
,
0x00
},
{
242
,
0x00
},
{
243
,
0x00
},
{
244
,
0x00
},
{
245
,
0x00
},
{
248
,
0x00
},
{
249
,
0x00
},
{
25
4
,
0x00
},
{
25
0
,
0x00
},
{
255
,
0x00
},
};
...
...
@@ -525,36 +494,41 @@ SOC_DAPM_SINGLE("Port2_2 Switch", LM49453_P0_PORT2_TX2_REG, 7, 1, 0),
};
/* TLV Declarations */
static
const
DECLARE_TLV_DB_SCALE
(
digital_tlv
,
-
7650
,
150
,
1
);
static
const
DECLARE_TLV_DB_SCALE
(
port_tlv
,
0
,
600
,
0
);
static
const
DECLARE_TLV_DB_SCALE
(
adc_dac_tlv
,
-
7650
,
150
,
1
);
static
const
DECLARE_TLV_DB_SCALE
(
mic_tlv
,
0
,
200
,
1
);
static
const
DECLARE_TLV_DB_SCALE
(
port_tlv
,
-
1800
,
600
,
0
);
static
const
DECLARE_TLV_DB_SCALE
(
stn_tlv
,
-
7200
,
150
,
0
);
static
const
struct
snd_kcontrol_new
lm49453_sidetone_mixer_controls
[]
=
{
/* Sidetone supports mono only */
SOC_DAPM_SINGLE_TLV
(
"Sidetone ADCL Volume"
,
LM49453_P0_STN_VOL_ADCL_REG
,
0
,
0x3F
,
0
,
digital
_tlv
),
0
,
0x3F
,
0
,
stn
_tlv
),
SOC_DAPM_SINGLE_TLV
(
"Sidetone ADCR Volume"
,
LM49453_P0_STN_VOL_ADCR_REG
,
0
,
0x3F
,
0
,
digital
_tlv
),
0
,
0x3F
,
0
,
stn
_tlv
),
SOC_DAPM_SINGLE_TLV
(
"Sidetone DMIC1L Volume"
,
LM49453_P0_STN_VOL_DMIC1L_REG
,
0
,
0x3F
,
0
,
digital
_tlv
),
0
,
0x3F
,
0
,
stn
_tlv
),
SOC_DAPM_SINGLE_TLV
(
"Sidetone DMIC1R Volume"
,
LM49453_P0_STN_VOL_DMIC1R_REG
,
0
,
0x3F
,
0
,
digital
_tlv
),
0
,
0x3F
,
0
,
stn
_tlv
),
SOC_DAPM_SINGLE_TLV
(
"Sidetone DMIC2L Volume"
,
LM49453_P0_STN_VOL_DMIC2L_REG
,
0
,
0x3F
,
0
,
digital
_tlv
),
0
,
0x3F
,
0
,
stn
_tlv
),
SOC_DAPM_SINGLE_TLV
(
"Sidetone DMIC2R Volume"
,
LM49453_P0_STN_VOL_DMIC2R_REG
,
0
,
0x3F
,
0
,
digital
_tlv
),
0
,
0x3F
,
0
,
stn
_tlv
),
};
static
const
struct
snd_kcontrol_new
lm49453_snd_controls
[]
=
{
/* mic1 and mic2 supports mono only */
SOC_SINGLE_TLV
(
"Mic1 Volume"
,
LM49453_P0_ADC_LEVELL_REG
,
0
,
6
,
0
,
digital_tlv
),
SOC_SINGLE_TLV
(
"Mic2 Volume"
,
LM49453_P0_ADC_LEVELR_REG
,
0
,
6
,
0
,
digital_tlv
),
SOC_SINGLE_TLV
(
"Mic1 Volume"
,
LM49453_P0_MICL_REG
,
0
,
15
,
0
,
mic_tlv
),
SOC_SINGLE_TLV
(
"Mic2 Volume"
,
LM49453_P0_MICR_REG
,
0
,
15
,
0
,
mic_tlv
),
SOC_SINGLE_TLV
(
"ADCL Volume"
,
LM49453_P0_ADC_LEVELL_REG
,
0
,
63
,
0
,
adc_dac_tlv
),
SOC_SINGLE_TLV
(
"ADCR Volume"
,
LM49453_P0_ADC_LEVELR_REG
,
0
,
63
,
0
,
adc_dac_tlv
),
SOC_DOUBLE_R_TLV
(
"DMIC1 Volume"
,
LM49453_P0_DMIC1_LEVELL_REG
,
LM49453_P0_DMIC1_LEVELR_REG
,
0
,
6
,
0
,
digital
_tlv
),
LM49453_P0_DMIC1_LEVELR_REG
,
0
,
6
3
,
0
,
adc_dac
_tlv
),
SOC_DOUBLE_R_TLV
(
"DMIC2 Volume"
,
LM49453_P0_DMIC2_LEVELL_REG
,
LM49453_P0_DMIC2_LEVELR_REG
,
0
,
6
,
0
,
digital
_tlv
),
LM49453_P0_DMIC2_LEVELR_REG
,
0
,
6
3
,
0
,
adc_dac
_tlv
),
SOC_DAPM_ENUM
(
"Mic2Mode"
,
lm49453_mic2mode_enum
),
SOC_DAPM_ENUM
(
"DMIC12 SRC"
,
lm49453_dmic12_cfg_enum
),
...
...
@@ -569,16 +543,16 @@ static const struct snd_kcontrol_new lm49453_snd_controls[] = {
2
,
1
,
0
),
SOC_DOUBLE_R_TLV
(
"DAC HP Volume"
,
LM49453_P0_DAC_HP_LEVELL_REG
,
LM49453_P0_DAC_HP_LEVELR_REG
,
0
,
6
,
0
,
digital
_tlv
),
LM49453_P0_DAC_HP_LEVELR_REG
,
0
,
6
3
,
0
,
adc_dac
_tlv
),
SOC_DOUBLE_R_TLV
(
"DAC LO Volume"
,
LM49453_P0_DAC_LO_LEVELL_REG
,
LM49453_P0_DAC_LO_LEVELR_REG
,
0
,
6
,
0
,
digital
_tlv
),
LM49453_P0_DAC_LO_LEVELR_REG
,
0
,
6
3
,
0
,
adc_dac
_tlv
),
SOC_DOUBLE_R_TLV
(
"DAC LS Volume"
,
LM49453_P0_DAC_LS_LEVELL_REG
,
LM49453_P0_DAC_LS_LEVELR_REG
,
0
,
6
,
0
,
digital
_tlv
),
LM49453_P0_DAC_LS_LEVELR_REG
,
0
,
6
3
,
0
,
adc_dac
_tlv
),
SOC_DOUBLE_R_TLV
(
"DAC HA Volume"
,
LM49453_P0_DAC_HA_LEVELL_REG
,
LM49453_P0_DAC_HA_LEVELR_REG
,
0
,
6
,
0
,
digital
_tlv
),
LM49453_P0_DAC_HA_LEVELR_REG
,
0
,
6
3
,
0
,
adc_dac
_tlv
),
SOC_SINGLE_TLV
(
"EP Volume"
,
LM49453_P0_DAC_LS_LEVELL_REG
,
0
,
6
,
0
,
digital
_tlv
),
0
,
6
3
,
0
,
adc_dac
_tlv
),
SOC_SINGLE_TLV
(
"PORT1_1_RX_LVL Volume"
,
LM49453_P0_PORT1_RX_LVL1_REG
,
0
,
3
,
0
,
port_tlv
),
...
...
@@ -1218,7 +1192,7 @@ static int lm49453_set_dai_fmt(struct snd_soc_dai *codec_dai, unsigned int fmt)
}
snd_soc_update_bits
(
codec
,
LM49453_P0_AUDIO_PORT1_BASIC_REG
,
LM49453_AUDIO_PORT1_BASIC_FMT_MASK
|
BIT
(
1
)
|
BIT
(
5
),
LM49453_AUDIO_PORT1_BASIC_FMT_MASK
|
BIT
(
0
)
|
BIT
(
5
),
(
aif_val
|
mode
|
clk_phase
));
snd_soc_write
(
codec
,
LM49453_P0_AUDIO_PORT1_RX_MSB_REG
,
clk_shift
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录