Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
c6f4bc21
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看板
提交
c6f4bc21
编写于
2月 02, 2007
作者:
L
Len Brown
浏览文件
操作
浏览文件
下载
差异文件
Pull bugzilla-7349 into test branch
上级
7e23772f
82cae999
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
43 addition
and
15 deletion
+43
-15
drivers/acpi/video.c
drivers/acpi/video.c
+43
-15
未找到文件。
drivers/acpi/video.c
浏览文件 @
c6f4bc21
...
...
@@ -59,6 +59,11 @@
#define ACPI_VIDEO_HEAD_END (~0u)
#define MAX_NAME_LEN 20
#define ACPI_VIDEO_DISPLAY_CRT 1
#define ACPI_VIDEO_DISPLAY_TV 2
#define ACPI_VIDEO_DISPLAY_DVI 3
#define ACPI_VIDEO_DISPLAY_LCD 4
#define _COMPONENT ACPI_VIDEO_COMPONENT
ACPI_MODULE_NAME
(
"acpi_video"
)
...
...
@@ -135,9 +140,10 @@ struct acpi_video_device_flags {
u8
crt
:
1
;
u8
lcd
:
1
;
u8
tvout
:
1
;
u8
dvi
:
1
;
u8
bios
:
1
;
u8
unknown
:
1
;
u8
reserved
:
3
;
u8
reserved
:
2
;
};
struct
acpi_video_device_cap
{
...
...
@@ -732,6 +738,8 @@ static int acpi_video_device_info_seq_show(struct seq_file *seq, void *offset)
seq_printf
(
seq
,
"LCD
\n
"
);
else
if
(
dev
->
flags
.
tvout
)
seq_printf
(
seq
,
"TVOUT
\n
"
);
else
if
(
dev
->
flags
.
dvi
)
seq_printf
(
seq
,
"DVI
\n
"
);
else
seq_printf
(
seq
,
"UNKNOWN
\n
"
);
...
...
@@ -1306,6 +1314,16 @@ static int acpi_video_bus_remove_fs(struct acpi_device *device)
-------------------------------------------------------------------------- */
/* device interface */
static
struct
acpi_video_device_attrib
*
acpi_video_get_device_attr
(
struct
acpi_video_bus
*
video
,
unsigned
long
device_id
)
{
int
count
;
for
(
count
=
0
;
count
<
video
->
attached_count
;
count
++
)
if
((
video
->
attached_array
[
count
].
value
.
int_val
&
0xffff
)
==
device_id
)
return
&
(
video
->
attached_array
[
count
].
value
.
attrib
);
return
NULL
;
}
static
int
acpi_video_bus_get_one_device
(
struct
acpi_device
*
device
,
...
...
@@ -1314,7 +1332,7 @@ acpi_video_bus_get_one_device(struct acpi_device *device,
unsigned
long
device_id
;
int
status
;
struct
acpi_video_device
*
data
;
struct
acpi_video_device_attrib
*
attribute
;
if
(
!
device
||
!
video
)
return
-
EINVAL
;
...
...
@@ -1335,20 +1353,30 @@ acpi_video_bus_get_one_device(struct acpi_device *device,
data
->
video
=
video
;
data
->
dev
=
device
;
switch
(
device_id
&
0xffff
)
{
case
0x0100
:
data
->
flags
.
crt
=
1
;
break
;
case
0x0400
:
data
->
flags
.
lcd
=
1
;
break
;
case
0x0200
:
data
->
flags
.
tvout
=
1
;
break
;
default:
attribute
=
acpi_video_get_device_attr
(
video
,
device_id
);
if
((
attribute
!=
NULL
)
&&
attribute
->
device_id_scheme
)
{
switch
(
attribute
->
display_type
)
{
case
ACPI_VIDEO_DISPLAY_CRT
:
data
->
flags
.
crt
=
1
;
break
;
case
ACPI_VIDEO_DISPLAY_TV
:
data
->
flags
.
tvout
=
1
;
break
;
case
ACPI_VIDEO_DISPLAY_DVI
:
data
->
flags
.
dvi
=
1
;
break
;
case
ACPI_VIDEO_DISPLAY_LCD
:
data
->
flags
.
lcd
=
1
;
break
;
default:
data
->
flags
.
unknown
=
1
;
break
;
}
if
(
attribute
->
bios_can_detect
)
data
->
flags
.
bios
=
1
;
}
else
data
->
flags
.
unknown
=
1
;
break
;
}
acpi_video_device_bind
(
video
,
data
);
acpi_video_device_find_cap
(
data
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录