Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
edc3596f
cloud-kernel
项目概览
openanolis
/
cloud-kernel
大约 1 年 前同步成功
通知
158
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
edc3596f
编写于
6月 03, 2014
作者:
M
Mark Brown
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'asoc/topic/cs42l56' into asoc-next
上级
6340c5ab
4641c771
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
37 addition
and
43 deletion
+37
-43
sound/soc/codecs/cs42l56.c
sound/soc/codecs/cs42l56.c
+31
-39
sound/soc/codecs/cs42l56.h
sound/soc/codecs/cs42l56.h
+6
-4
未找到文件。
sound/soc/codecs/cs42l56.c
浏览文件 @
edc3596f
...
...
@@ -763,14 +763,14 @@ static int cs42l56_set_sysclk(struct snd_soc_dai *codec_dai,
case
CS42L56_MCLK_11P2896MHZ
:
case
CS42L56_MCLK_12MHZ
:
case
CS42L56_MCLK_12P288MHZ
:
cs42l56
->
mclk_div2
=
1
;
cs42l56
->
mclk_div2
=
CS42L56_MCLK_DIV2
;
cs42l56
->
mclk_prediv
=
0
;
break
;
case
CS42L56_MCLK_22P5792MHZ
:
case
CS42L56_MCLK_24MHZ
:
case
CS42L56_MCLK_24P576MHZ
:
cs42l56
->
mclk_div2
=
1
;
cs42l56
->
mclk_prediv
=
1
;
cs42l56
->
mclk_div2
=
CS42L56_MCLK_DIV2
;
cs42l56
->
mclk_prediv
=
CS42L56_MCLK_PREDIV
;
break
;
default:
return
-
EINVAL
;
...
...
@@ -844,57 +844,49 @@ static int cs42l56_digital_mute(struct snd_soc_dai *dai, int mute)
/* Hit the DSP Mixer first */
snd_soc_update_bits
(
codec
,
CS42L56_DSP_MUTE_CTL
,
CS42L56_ADCAMIX_MUTE_MASK
|
CS42L56_ADCBMIX_MUTE_MASK
|
CS42L56_PCMAMIX_MUTE_MASK
|
CS42L56_PCMBMIX_MUTE_MASK
|
CS42L56_MSTB_MUTE_MASK
|
CS42L56_MSTA_MUTE_MASK
,
CS42L56_MUTE
);
CS42L56_ADCBMIX_MUTE_MASK
|
CS42L56_PCMAMIX_MUTE_MASK
|
CS42L56_PCMBMIX_MUTE_MASK
|
CS42L56_MSTB_MUTE_MASK
|
CS42L56_MSTA_MUTE_MASK
,
CS42L56_MUTE_ALL
);
/* Mute ADC's */
snd_soc_update_bits
(
codec
,
CS42L56_MISC_ADC_CTL
,
CS42L56_ADCA_MUTE_MASK
|
CS42L56_ADCB_MUTE_MASK
,
CS42L56_MUTE
);
CS42L56_ADCA_MUTE_MASK
|
CS42L56_ADCB_MUTE_MASK
,
CS42L56_MUTE_ALL
);
/* HP And LO */
snd_soc_update_bits
(
codec
,
CS42L56_HPA_VOLUME
,
CS42L56_HP_MUTE_MASK
,
CS42L56_MUTE
);
CS42L56_HP_MUTE_MASK
,
CS42L56_MUTE_ALL
);
snd_soc_update_bits
(
codec
,
CS42L56_HPB_VOLUME
,
CS42L56_HP_MUTE_MASK
,
CS42L56_MUTE
);
CS42L56_HP_MUTE_MASK
,
CS42L56_MUTE_ALL
);
snd_soc_update_bits
(
codec
,
CS42L56_LOA_VOLUME
,
CS42L56_LO_MUTE_MASK
,
CS42L56_MUTE
);
CS42L56_LO_MUTE_MASK
,
CS42L56_MUTE_ALL
);
snd_soc_update_bits
(
codec
,
CS42L56_LOB_VOLUME
,
CS42L56_LO_MUTE_MASK
,
CS42L56_MUTE
);
CS42L56_LO_MUTE_MASK
,
CS42L56_MUTE_ALL
);
}
else
{
snd_soc_update_bits
(
codec
,
CS42L56_DSP_MUTE_CTL
,
CS42L56_ADCAMIX_MUTE_MASK
|
CS42L56_ADCBMIX_MUTE_MASK
|
CS42L56_PCMAMIX_MUTE_MASK
|
CS42L56_PCMBMIX_MUTE_MASK
|
CS42L56_MSTB_MUTE_MASK
|
CS42L56_MSTA_MUTE_MASK
,
CS42L56_UNMUTE
);
CS42L56_ADCBMIX_MUTE_MASK
|
CS42L56_PCMAMIX_MUTE_MASK
|
CS42L56_PCMBMIX_MUTE_MASK
|
CS42L56_MSTB_MUTE_MASK
|
CS42L56_MSTA_MUTE_MASK
,
CS42L56_UNMUTE
);
snd_soc_update_bits
(
codec
,
CS42L56_MISC_ADC_CTL
,
CS42L56_ADCA_MUTE_MASK
|
CS42L56_ADCB_MUTE_MASK
,
CS42L56_UNMUTE
);
CS42L56_ADCA_MUTE_MASK
|
CS42L56_ADCB_MUTE_MASK
,
CS42L56_UNMUTE
);
snd_soc_update_bits
(
codec
,
CS42L56_HPA_VOLUME
,
CS42L56_HP_MUTE_MASK
,
CS42L56_UNMUTE
);
CS42L56_HP_MUTE_MASK
,
CS42L56_UNMUTE
);
snd_soc_update_bits
(
codec
,
CS42L56_HPB_VOLUME
,
CS42L56_HP_MUTE_MASK
,
CS42L56_UNMUTE
);
CS42L56_HP_MUTE_MASK
,
CS42L56_UNMUTE
);
snd_soc_update_bits
(
codec
,
CS42L56_LOA_VOLUME
,
CS42L56_LO_MUTE_MASK
,
CS42L56_UNMUTE
);
CS42L56_LO_MUTE_MASK
,
CS42L56_UNMUTE
);
snd_soc_update_bits
(
codec
,
CS42L56_LOB_VOLUME
,
CS42L56_LO_MUTE_MASK
,
CS42L56_UNMUTE
);
CS42L56_LO_MUTE_MASK
,
CS42L56_UNMUTE
);
}
return
0
;
}
...
...
sound/soc/codecs/cs42l56.h
浏览文件 @
edc3596f
...
...
@@ -80,19 +80,21 @@
#define CS42L56_PDN_HPB_MASK 0xc0
/* serial port and clk masks */
#define CS42L56_MASTER_MODE
1
#define CS42L56_MASTER_MODE
0x40
#define CS42L56_SLAVE_MODE 0
#define CS42L56_MS_MODE_MASK 0x40
#define CS42L56_SCLK_INV
1
#define CS42L56_SCLK_INV
0x20
#define CS42L56_SCLK_INV_MASK 0x20
#define CS42L56_SCLK_MCLK_MASK 0x18
#define CS42L56_MCLK_PREDIV 0x04
#define CS42L56_MCLK_PREDIV_MASK 0x04
#define CS42L56_MCLK_DIV2 0x02
#define CS42L56_MCLK_DIV2_MASK 0x02
#define CS42L56_MCLK_DIS_MASK 0x01
#define CS42L56_CLK_AUTO_MASK 0x20
#define CS42L56_CLK_RATIO_MASK 0x1f
#define CS42L56_DIG_FMT_I2S 0
#define CS42L56_DIG_FMT_LEFT_J
1
#define CS42L56_DIG_FMT_LEFT_J
0x08
#define CS42L56_DIG_FMT_MASK 0x08
/* Class H and misc ctl masks */
...
...
@@ -116,7 +118,7 @@
#define CS42L56_DEEMPH_MASK 0x40
#define CS42L56_PLYBCK_GANG_MASK 0x10
#define CS42L56_PCM_INV_MASK 0x0c
#define CS42L56_MUTE
1
#define CS42L56_MUTE
_ALL 0xff
#define CS42L56_UNMUTE 0
#define CS42L56_ADCAMIX_MUTE_MASK 0x40
#define CS42L56_ADCBMIX_MUTE_MASK 0x80
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录