Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
607cf4d9
R
raspberrypi-kernel
项目概览
openeuler
/
raspberrypi-kernel
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
raspberrypi-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
607cf4d9
编写于
10月 27, 2005
作者:
G
Greg Kroah-Hartman
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[PATCH] I2O: Clean up some pretty bad driver model abuses in the i2o code
Signed-off-by:
N
Greg Kroah-Hartman
<
gregkh@suse.de
>
上级
4f5ca09e
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
11 addition
and
13 deletion
+11
-13
drivers/message/i2o/iop.c
drivers/message/i2o/iop.c
+10
-12
include/linux/i2o.h
include/linux/i2o.h
+1
-1
未找到文件。
drivers/message/i2o/iop.c
浏览文件 @
607cf4d9
...
...
@@ -833,6 +833,7 @@ void i2o_iop_remove(struct i2o_controller *c)
list_for_each_entry_safe
(
dev
,
tmp
,
&
c
->
devices
,
list
)
i2o_device_remove
(
dev
);
class_device_unregister
(
c
->
classdev
);
device_del
(
&
c
->
device
);
/* Ask the IOP to switch to RESET state */
...
...
@@ -1077,9 +1078,7 @@ static void i2o_iop_release(struct device *dev)
};
/* I2O controller class */
static
struct
class
i2o_controller_class
=
{
.
name
=
"i2o_controller"
,
};
static
struct
class
*
i2o_controller_class
;
/**
* i2o_iop_alloc - Allocate and initialize a i2o_controller struct
...
...
@@ -1110,14 +1109,10 @@ struct i2o_controller *i2o_iop_alloc(void)
sprintf
(
c
->
name
,
"iop%d"
,
c
->
unit
);
device_initialize
(
&
c
->
device
);
class_device_initialize
(
&
c
->
classdev
);
c
->
device
.
release
=
&
i2o_iop_release
;
c
->
classdev
.
class
=
&
i2o_controller_class
;
c
->
classdev
.
dev
=
&
c
->
device
;
snprintf
(
c
->
device
.
bus_id
,
BUS_ID_SIZE
,
"iop%d"
,
c
->
unit
);
snprintf
(
c
->
classdev
.
class_id
,
BUS_ID_SIZE
,
"iop%d"
,
c
->
unit
);
#if BITS_PER_LONG == 64
spin_lock_init
(
&
c
->
context_list_lock
);
...
...
@@ -1146,7 +1141,9 @@ int i2o_iop_add(struct i2o_controller *c)
goto
iop_reset
;
}
if
((
rc
=
class_device_add
(
&
c
->
classdev
)))
{
c
->
classdev
=
class_device_create
(
i2o_controller_class
,
0
,
&
c
->
device
,
"iop%d"
,
c
->
unit
);
if
(
IS_ERR
(
c
->
classdev
))
{
osm_err
(
"%s: could not add controller class
\n
"
,
c
->
name
);
goto
device_del
;
}
...
...
@@ -1184,7 +1181,7 @@ int i2o_iop_add(struct i2o_controller *c)
return
0
;
class_del:
class_device_
del
(
&
c
->
classdev
);
class_device_
unregister
(
c
->
classdev
);
device_del:
device_del
(
&
c
->
device
);
...
...
@@ -1250,7 +1247,8 @@ static int __init i2o_iop_init(void)
if
(
rc
)
goto
exit
;
if
((
rc
=
class_register
(
&
i2o_controller_class
)))
{
i2o_controller_class
=
class_create
(
THIS_MODULE
,
"i2o_controller"
);
if
(
IS_ERR
(
i2o_controller_class
))
{
osm_err
(
"can't register class i2o_controller
\n
"
);
goto
device_exit
;
}
...
...
@@ -1273,7 +1271,7 @@ static int __init i2o_iop_init(void)
i2o_driver_exit
();
class_exit:
class_
unregister
(
&
i2o_controller_class
);
class_
destroy
(
i2o_controller_class
);
device_exit:
i2o_device_exit
();
...
...
@@ -1292,7 +1290,7 @@ static void __exit i2o_iop_exit(void)
i2o_pci_exit
();
i2o_exec_exit
();
i2o_driver_exit
();
class_
unregister
(
&
i2o_controller_class
);
class_
destroy
(
i2o_controller_class
);
i2o_device_exit
();
};
...
...
include/linux/i2o.h
浏览文件 @
607cf4d9
...
...
@@ -194,7 +194,7 @@ struct i2o_controller {
struct
resource
mem_resource
;
/* Mem resource allocated to the IOP */
struct
device
device
;
struct
class_device
classdev
;
/* I2O controller class
*/
struct
class_device
*
classdev
;
/* I2O controller class device
*/
struct
i2o_device
*
exec
;
/* Executive */
#if BITS_PER_LONG == 64
spinlock_t
context_list_lock
;
/* lock for context_list */
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录