Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
b12b2259
K
Kernel
项目概览
openeuler
/
Kernel
接近 2 年 前同步成功
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
b12b2259
编写于
11月 14, 2019
作者:
T
Takashi Iwai
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'for-linus' into for-next
Signed-off-by:
N
Takashi Iwai
<
tiwai@suse.de
>
上级
50952670
976a68f0
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
23 addition
and
9 deletion
+23
-9
sound/core/pcm_lib.c
sound/core/pcm_lib.c
+6
-2
sound/pci/hda/hda_intel.c
sound/pci/hda/hda_intel.c
+3
-0
sound/pci/hda/patch_hdmi.c
sound/pci/hda/patch_hdmi.c
+3
-1
sound/usb/endpoint.c
sound/usb/endpoint.c
+3
-0
sound/usb/mixer.c
sound/usb/mixer.c
+3
-1
sound/usb/quirks.c
sound/usb/quirks.c
+2
-2
sound/usb/validate.c
sound/usb/validate.c
+3
-3
未找到文件。
sound/core/pcm_lib.c
浏览文件 @
b12b2259
...
@@ -1782,11 +1782,14 @@ void snd_pcm_period_elapsed(struct snd_pcm_substream *substream)
...
@@ -1782,11 +1782,14 @@ void snd_pcm_period_elapsed(struct snd_pcm_substream *substream)
struct
snd_pcm_runtime
*
runtime
;
struct
snd_pcm_runtime
*
runtime
;
unsigned
long
flags
;
unsigned
long
flags
;
if
(
PCM_RUNTIME_CHECK
(
substream
))
if
(
snd_BUG_ON
(
!
substream
))
return
;
return
;
runtime
=
substream
->
runtime
;
snd_pcm_stream_lock_irqsave
(
substream
,
flags
);
snd_pcm_stream_lock_irqsave
(
substream
,
flags
);
if
(
PCM_RUNTIME_CHECK
(
substream
))
goto
_unlock
;
runtime
=
substream
->
runtime
;
if
(
!
snd_pcm_running
(
substream
)
||
if
(
!
snd_pcm_running
(
substream
)
||
snd_pcm_update_hw_ptr0
(
substream
,
1
)
<
0
)
snd_pcm_update_hw_ptr0
(
substream
,
1
)
<
0
)
goto
_end
;
goto
_end
;
...
@@ -1797,6 +1800,7 @@ void snd_pcm_period_elapsed(struct snd_pcm_substream *substream)
...
@@ -1797,6 +1800,7 @@ void snd_pcm_period_elapsed(struct snd_pcm_substream *substream)
#endif
#endif
_end:
_end:
kill_fasync
(
&
runtime
->
fasync
,
SIGIO
,
POLL_IN
);
kill_fasync
(
&
runtime
->
fasync
,
SIGIO
,
POLL_IN
);
_unlock:
snd_pcm_stream_unlock_irqrestore
(
substream
,
flags
);
snd_pcm_stream_unlock_irqrestore
(
substream
,
flags
);
}
}
EXPORT_SYMBOL
(
snd_pcm_period_elapsed
);
EXPORT_SYMBOL
(
snd_pcm_period_elapsed
);
...
...
sound/pci/hda/hda_intel.c
浏览文件 @
b12b2259
...
@@ -2386,6 +2386,9 @@ static const struct pci_device_id azx_ids[] = {
...
@@ -2386,6 +2386,9 @@ static const struct pci_device_id azx_ids[] = {
/* CometLake-H */
/* CometLake-H */
{
PCI_DEVICE
(
0x8086
,
0x06C8
),
{
PCI_DEVICE
(
0x8086
,
0x06C8
),
.
driver_data
=
AZX_DRIVER_SKL
|
AZX_DCAPS_INTEL_SKYLAKE
},
.
driver_data
=
AZX_DRIVER_SKL
|
AZX_DCAPS_INTEL_SKYLAKE
},
/* CometLake-S */
{
PCI_DEVICE
(
0x8086
,
0xa3f0
),
.
driver_data
=
AZX_DRIVER_SKL
|
AZX_DCAPS_INTEL_SKYLAKE
},
/* Icelake */
/* Icelake */
{
PCI_DEVICE
(
0x8086
,
0x34c8
),
{
PCI_DEVICE
(
0x8086
,
0x34c8
),
.
driver_data
=
AZX_DRIVER_SKL
|
AZX_DCAPS_INTEL_SKYLAKE
},
.
driver_data
=
AZX_DRIVER_SKL
|
AZX_DCAPS_INTEL_SKYLAKE
},
...
...
sound/pci/hda/patch_hdmi.c
浏览文件 @
b12b2259
...
@@ -46,10 +46,12 @@ MODULE_PARM_DESC(static_hdmi_pcm, "Don't restrict PCM parameters per ELD info");
...
@@ -46,10 +46,12 @@ MODULE_PARM_DESC(static_hdmi_pcm, "Don't restrict PCM parameters per ELD info");
((codec)->core.vendor_id == 0x80862800))
((codec)->core.vendor_id == 0x80862800))
#define is_cannonlake(codec) ((codec)->core.vendor_id == 0x8086280c)
#define is_cannonlake(codec) ((codec)->core.vendor_id == 0x8086280c)
#define is_icelake(codec) ((codec)->core.vendor_id == 0x8086280f)
#define is_icelake(codec) ((codec)->core.vendor_id == 0x8086280f)
#define is_tigerlake(codec) ((codec)->core.vendor_id == 0x80862812)
#define is_haswell_plus(codec) (is_haswell(codec) || is_broadwell(codec) \
#define is_haswell_plus(codec) (is_haswell(codec) || is_broadwell(codec) \
|| is_skylake(codec) || is_broxton(codec) \
|| is_skylake(codec) || is_broxton(codec) \
|| is_kabylake(codec) || is_geminilake(codec) \
|| is_kabylake(codec) || is_geminilake(codec) \
|| is_cannonlake(codec) || is_icelake(codec))
|| is_cannonlake(codec) || is_icelake(codec) \
|| is_tigerlake(codec))
#define is_valleyview(codec) ((codec)->core.vendor_id == 0x80862882)
#define is_valleyview(codec) ((codec)->core.vendor_id == 0x80862882)
#define is_cherryview(codec) ((codec)->core.vendor_id == 0x80862883)
#define is_cherryview(codec) ((codec)->core.vendor_id == 0x80862883)
#define is_valleyview_plus(codec) (is_valleyview(codec) || is_cherryview(codec))
#define is_valleyview_plus(codec) (is_valleyview(codec) || is_cherryview(codec))
...
...
sound/usb/endpoint.c
浏览文件 @
b12b2259
...
@@ -388,6 +388,9 @@ static void snd_complete_urb(struct urb *urb)
...
@@ -388,6 +388,9 @@ static void snd_complete_urb(struct urb *urb)
}
}
prepare_outbound_urb
(
ep
,
ctx
);
prepare_outbound_urb
(
ep
,
ctx
);
/* can be stopped during prepare callback */
if
(
unlikely
(
!
test_bit
(
EP_FLAG_RUNNING
,
&
ep
->
flags
)))
goto
exit_clear
;
}
else
{
}
else
{
retire_inbound_urb
(
ep
,
ctx
);
retire_inbound_urb
(
ep
,
ctx
);
/* can be stopped during retire callback */
/* can be stopped during retire callback */
...
...
sound/usb/mixer.c
浏览文件 @
b12b2259
...
@@ -1229,7 +1229,8 @@ static int get_min_max_with_quirks(struct usb_mixer_elem_info *cval,
...
@@ -1229,7 +1229,8 @@ static int get_min_max_with_quirks(struct usb_mixer_elem_info *cval,
if
(
cval
->
min
+
cval
->
res
<
cval
->
max
)
{
if
(
cval
->
min
+
cval
->
res
<
cval
->
max
)
{
int
last_valid_res
=
cval
->
res
;
int
last_valid_res
=
cval
->
res
;
int
saved
,
test
,
check
;
int
saved
,
test
,
check
;
get_cur_mix_raw
(
cval
,
minchn
,
&
saved
);
if
(
get_cur_mix_raw
(
cval
,
minchn
,
&
saved
)
<
0
)
goto
no_res_check
;
for
(;;)
{
for
(;;)
{
test
=
saved
;
test
=
saved
;
if
(
test
<
cval
->
max
)
if
(
test
<
cval
->
max
)
...
@@ -1249,6 +1250,7 @@ static int get_min_max_with_quirks(struct usb_mixer_elem_info *cval,
...
@@ -1249,6 +1250,7 @@ static int get_min_max_with_quirks(struct usb_mixer_elem_info *cval,
snd_usb_set_cur_mix_value
(
cval
,
minchn
,
0
,
saved
);
snd_usb_set_cur_mix_value
(
cval
,
minchn
,
0
,
saved
);
}
}
no_res_check:
cval
->
initialized
=
1
;
cval
->
initialized
=
1
;
}
}
...
...
sound/usb/quirks.c
浏览文件 @
b12b2259
...
@@ -248,8 +248,8 @@ static int create_yamaha_midi_quirk(struct snd_usb_audio *chip,
...
@@ -248,8 +248,8 @@ static int create_yamaha_midi_quirk(struct snd_usb_audio *chip,
NULL
,
USB_MS_MIDI_OUT_JACK
);
NULL
,
USB_MS_MIDI_OUT_JACK
);
if
(
!
injd
&&
!
outjd
)
if
(
!
injd
&&
!
outjd
)
return
-
ENODEV
;
return
-
ENODEV
;
if
(
!
(
injd
&&
snd_usb_validate_midi_desc
(
injd
))
||
if
(
(
injd
&&
!
snd_usb_validate_midi_desc
(
injd
))
||
!
(
outjd
&&
snd_usb_validate_midi_desc
(
outjd
)))
(
outjd
&&
!
snd_usb_validate_midi_desc
(
outjd
)))
return
-
ENODEV
;
return
-
ENODEV
;
if
(
injd
&&
(
injd
->
bLength
<
5
||
if
(
injd
&&
(
injd
->
bLength
<
5
||
(
injd
->
bJackType
!=
USB_MS_EMBEDDED
&&
(
injd
->
bJackType
!=
USB_MS_EMBEDDED
&&
...
...
sound/usb/validate.c
浏览文件 @
b12b2259
...
@@ -81,9 +81,9 @@ static bool validate_processing_unit(const void *p,
...
@@ -81,9 +81,9 @@ static bool validate_processing_unit(const void *p,
switch
(
v
->
protocol
)
{
switch
(
v
->
protocol
)
{
case
UAC_VERSION_1
:
case
UAC_VERSION_1
:
default:
default:
/* bNrChannels, wChannelConfig, iChannelNames
, bControlSize
*/
/* bNrChannels, wChannelConfig, iChannelNames */
len
+=
1
+
2
+
1
+
1
;
len
+=
1
+
2
+
1
;
if
(
d
->
bLength
<
len
)
/* bControlSize */
if
(
d
->
bLength
<
len
+
1
)
/* bControlSize */
return
false
;
return
false
;
m
=
hdr
[
len
];
m
=
hdr
[
len
];
len
+=
1
+
m
+
1
;
/* bControlSize, bmControls, iProcessing */
len
+=
1
+
m
+
1
;
/* bControlSize, bmControls, iProcessing */
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录