Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
58cba465
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
161
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看板
提交
58cba465
编写于
1月 12, 2006
作者:
L
Linus Torvalds
浏览文件
操作
浏览文件
下载
差异文件
Merge
git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-fixes-2.6
上级
37ef4399
db1019ca
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
62 addition
and
2 deletion
+62
-2
drivers/pcmcia/ds.c
drivers/pcmcia/ds.c
+35
-2
drivers/pcmcia/socket_sysfs.c
drivers/pcmcia/socket_sysfs.c
+25
-0
drivers/serial/serial_cs.c
drivers/serial/serial_cs.c
+2
-0
未找到文件。
drivers/pcmcia/ds.c
浏览文件 @
58cba465
...
...
@@ -920,6 +920,37 @@ pcmcia_device_stringattr(prod_id2, prod_id[1]);
pcmcia_device_stringattr
(
prod_id3
,
prod_id
[
2
]);
pcmcia_device_stringattr
(
prod_id4
,
prod_id
[
3
]);
static
ssize_t
pcmcia_show_pm_state
(
struct
device
*
dev
,
struct
device_attribute
*
attr
,
char
*
buf
)
{
struct
pcmcia_device
*
p_dev
=
to_pcmcia_dev
(
dev
);
if
(
p_dev
->
dev
.
power
.
power_state
.
event
!=
PM_EVENT_ON
)
return
sprintf
(
buf
,
"off
\n
"
);
else
return
sprintf
(
buf
,
"on
\n
"
);
}
static
ssize_t
pcmcia_store_pm_state
(
struct
device
*
dev
,
struct
device_attribute
*
attr
,
const
char
*
buf
,
size_t
count
)
{
struct
pcmcia_device
*
p_dev
=
to_pcmcia_dev
(
dev
);
int
ret
=
0
;
if
(
!
count
)
return
-
EINVAL
;
if
((
p_dev
->
dev
.
power
.
power_state
.
event
==
PM_EVENT_ON
)
&&
(
!
strncmp
(
buf
,
"off"
,
3
)))
ret
=
dpm_runtime_suspend
(
dev
,
PMSG_SUSPEND
);
else
if
((
p_dev
->
dev
.
power
.
power_state
.
event
!=
PM_EVENT_ON
)
&&
(
!
strncmp
(
buf
,
"on"
,
2
)))
dpm_runtime_resume
(
dev
);
return
ret
?
ret
:
count
;
}
static
ssize_t
modalias_show
(
struct
device
*
dev
,
struct
device_attribute
*
attr
,
char
*
buf
)
{
struct
pcmcia_device
*
p_dev
=
to_pcmcia_dev
(
dev
);
...
...
@@ -945,8 +976,9 @@ static ssize_t pcmcia_store_allow_func_id_match(struct device *dev,
struct
device_attribute
*
attr
,
const
char
*
buf
,
size_t
count
)
{
struct
pcmcia_device
*
p_dev
=
to_pcmcia_dev
(
dev
);
if
(
!
count
)
return
-
EINVAL
;
if
(
!
count
)
return
-
EINVAL
;
down
(
&
p_dev
->
socket
->
skt_sem
);
p_dev
->
allow_func_id_match
=
1
;
...
...
@@ -959,6 +991,7 @@ static ssize_t pcmcia_store_allow_func_id_match(struct device *dev,
static
struct
device_attribute
pcmcia_dev_attrs
[]
=
{
__ATTR
(
function
,
0444
,
func_show
,
NULL
),
__ATTR
(
pm_state
,
0644
,
pcmcia_show_pm_state
,
pcmcia_store_pm_state
),
__ATTR_RO
(
func_id
),
__ATTR_RO
(
manf_id
),
__ATTR_RO
(
card_id
),
...
...
drivers/pcmcia/socket_sysfs.c
浏览文件 @
58cba465
...
...
@@ -98,6 +98,30 @@ static ssize_t pccard_store_insert(struct class_device *dev, const char *buf, si
}
static
CLASS_DEVICE_ATTR
(
card_insert
,
0200
,
NULL
,
pccard_store_insert
);
static
ssize_t
pccard_show_card_pm_state
(
struct
class_device
*
dev
,
char
*
buf
)
{
struct
pcmcia_socket
*
s
=
to_socket
(
dev
);
return
sprintf
(
buf
,
"%s
\n
"
,
s
->
state
&
SOCKET_SUSPEND
?
"off"
:
"on"
);
}
static
ssize_t
pccard_store_card_pm_state
(
struct
class_device
*
dev
,
const
char
*
buf
,
size_t
count
)
{
ssize_t
ret
=
-
EINVAL
;
struct
pcmcia_socket
*
s
=
to_socket
(
dev
);
if
(
!
count
)
return
-
EINVAL
;
if
(
!
(
s
->
state
&
SOCKET_SUSPEND
)
&&
!
strncmp
(
buf
,
"off"
,
3
))
ret
=
pcmcia_suspend_card
(
s
);
else
if
((
s
->
state
&
SOCKET_SUSPEND
)
&&
!
strncmp
(
buf
,
"on"
,
2
))
ret
=
pcmcia_resume_card
(
s
);
return
ret
?
-
ENODEV
:
count
;
}
static
CLASS_DEVICE_ATTR
(
card_pm_state
,
0644
,
pccard_show_card_pm_state
,
pccard_store_card_pm_state
);
static
ssize_t
pccard_store_eject
(
struct
class_device
*
dev
,
const
char
*
buf
,
size_t
count
)
{
ssize_t
ret
;
...
...
@@ -320,6 +344,7 @@ static struct class_device_attribute *pccard_socket_attributes[] = {
&
class_device_attr_card_vpp
,
&
class_device_attr_card_vcc
,
&
class_device_attr_card_insert
,
&
class_device_attr_card_pm_state
,
&
class_device_attr_card_eject
,
&
class_device_attr_card_irq_mask
,
&
class_device_attr_available_resources_setup_done
,
...
...
drivers/serial/serial_cs.c
浏览文件 @
58cba465
...
...
@@ -785,6 +785,8 @@ static struct pcmcia_device_id serial_ids[] = {
PCMCIA_MFC_DEVICE_CIS_MANF_CARD
(
1
,
0x0101
,
0x0035
,
"3CXEM556.cis"
),
PCMCIA_MFC_DEVICE_CIS_MANF_CARD
(
1
,
0x0101
,
0x003d
,
"3CXEM556.cis"
),
PCMCIA_DEVICE_CIS_MANF_CARD
(
0x0192
,
0x0710
,
"SW_7xx_SER.cis"
),
/* Sierra Wireless AC710/AC750 GPRS Network Adapter R1 */
PCMCIA_DEVICE_CIS_MANF_CARD
(
0x0192
,
0xa555
,
"SW_555_SER.cis"
),
/* Sierra Aircard 555 CDMA 1xrtt Modem -- pre update */
PCMCIA_DEVICE_CIS_MANF_CARD
(
0x013f
,
0xa555
,
"SW_555_SER.cis"
),
/* Sierra Aircard 555 CDMA 1xrtt Modem -- post update */
PCMCIA_DEVICE_CIS_PROD_ID12
(
"MultiTech"
,
"PCMCIA 56K DataFax"
,
0x842047ee
,
0xc2efcf03
,
"MT5634ZLX.cis"
),
PCMCIA_DEVICE_CIS_PROD_ID12
(
"ADVANTECH"
,
"COMpad-32/85B-4"
,
0x96913a85
,
0xcec8f102
,
"COMpad4.cis"
),
PCMCIA_DEVICE_CIS_PROD_ID123
(
"ADVANTECH"
,
"COMpad-32/85"
,
"1.0"
,
0x96913a85
,
0x8fbe92ae
,
0x0877b627
,
"COMpad2.cis"
),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录