Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
a9b68d3b
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
160
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看板
提交
a9b68d3b
编写于
1月 16, 2014
作者:
M
Mark Brown
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'asoc/topic/core' into for-tiwai
上级
efe265d3
1104a9c8
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
21 addition
and
18 deletion
+21
-18
sound/soc/soc-core.c
sound/soc/soc-core.c
+2
-2
sound/soc/soc-pcm.c
sound/soc/soc-pcm.c
+19
-16
未找到文件。
sound/soc/soc-core.c
浏览文件 @
a9b68d3b
...
...
@@ -3484,7 +3484,7 @@ int snd_soc_dai_set_sysclk(struct snd_soc_dai *dai, int clk_id,
return
dai
->
codec
->
driver
->
set_sysclk
(
dai
->
codec
,
clk_id
,
0
,
freq
,
dir
);
else
return
-
E
INVAL
;
return
-
E
NOTSUPP
;
}
EXPORT_SYMBOL_GPL
(
snd_soc_dai_set_sysclk
);
...
...
@@ -3505,7 +3505,7 @@ int snd_soc_codec_set_sysclk(struct snd_soc_codec *codec, int clk_id,
return
codec
->
driver
->
set_sysclk
(
codec
,
clk_id
,
source
,
freq
,
dir
);
else
return
-
E
INVAL
;
return
-
E
NOTSUPP
;
}
EXPORT_SYMBOL_GPL
(
snd_soc_codec_set_sysclk
);
...
...
sound/soc/soc-pcm.c
浏览文件 @
a9b68d3b
...
...
@@ -776,7 +776,7 @@ static int soc_pcm_bespoke_trigger(struct snd_pcm_substream *substream,
return
ret
;
}
if
(
platform
->
driver
->
ops
&&
platform
->
driver
->
bespoke_trigger
)
{
if
(
platform
->
driver
->
bespoke_trigger
)
{
ret
=
platform
->
driver
->
bespoke_trigger
(
substream
,
cmd
);
if
(
ret
<
0
)
return
ret
;
...
...
@@ -1235,6 +1235,20 @@ static int dpcm_be_dai_startup(struct snd_soc_pcm_runtime *fe, int stream)
return
err
;
}
static
void
dpcm_init_runtime_hw
(
struct
snd_pcm_runtime
*
runtime
,
struct
snd_soc_pcm_stream
*
stream
)
{
runtime
->
hw
.
rate_min
=
stream
->
rate_min
;
runtime
->
hw
.
rate_max
=
stream
->
rate_max
;
runtime
->
hw
.
channels_min
=
stream
->
channels_min
;
runtime
->
hw
.
channels_max
=
stream
->
channels_max
;
if
(
runtime
->
hw
.
formats
)
runtime
->
hw
.
formats
&=
stream
->
formats
;
else
runtime
->
hw
.
formats
=
stream
->
formats
;
runtime
->
hw
.
rates
=
stream
->
rates
;
}
static
void
dpcm_set_fe_runtime
(
struct
snd_pcm_substream
*
substream
)
{
struct
snd_pcm_runtime
*
runtime
=
substream
->
runtime
;
...
...
@@ -1242,21 +1256,10 @@ static void dpcm_set_fe_runtime(struct snd_pcm_substream *substream)
struct
snd_soc_dai
*
cpu_dai
=
rtd
->
cpu_dai
;
struct
snd_soc_dai_driver
*
cpu_dai_drv
=
cpu_dai
->
driver
;
if
(
substream
->
stream
==
SNDRV_PCM_STREAM_PLAYBACK
)
{
runtime
->
hw
.
rate_min
=
cpu_dai_drv
->
playback
.
rate_min
;
runtime
->
hw
.
rate_max
=
cpu_dai_drv
->
playback
.
rate_max
;
runtime
->
hw
.
channels_min
=
cpu_dai_drv
->
playback
.
channels_min
;
runtime
->
hw
.
channels_max
=
cpu_dai_drv
->
playback
.
channels_max
;
runtime
->
hw
.
formats
&=
cpu_dai_drv
->
playback
.
formats
;
runtime
->
hw
.
rates
=
cpu_dai_drv
->
playback
.
rates
;
}
else
{
runtime
->
hw
.
rate_min
=
cpu_dai_drv
->
capture
.
rate_min
;
runtime
->
hw
.
rate_max
=
cpu_dai_drv
->
capture
.
rate_max
;
runtime
->
hw
.
channels_min
=
cpu_dai_drv
->
capture
.
channels_min
;
runtime
->
hw
.
channels_max
=
cpu_dai_drv
->
capture
.
channels_max
;
runtime
->
hw
.
formats
&=
cpu_dai_drv
->
capture
.
formats
;
runtime
->
hw
.
rates
=
cpu_dai_drv
->
capture
.
rates
;
}
if
(
substream
->
stream
==
SNDRV_PCM_STREAM_PLAYBACK
)
dpcm_init_runtime_hw
(
runtime
,
&
cpu_dai_drv
->
playback
);
else
dpcm_init_runtime_hw
(
runtime
,
&
cpu_dai_drv
->
capture
);
}
static
int
dpcm_fe_dai_startup
(
struct
snd_pcm_substream
*
fe_substream
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录