Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
92183b34
K
Kernel
项目概览
openeuler
/
Kernel
1 年多 前同步成功
通知
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看板
提交
92183b34
编写于
4月 05, 2009
作者:
G
Geert Uytterhoeven
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
m68k: amiga - Floppy platform device conversion
Signed-off-by:
N
Geert Uytterhoeven
<
geert@linux-m68k.org
>
上级
ff2db7c5
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
26 addition
and
26 deletion
+26
-26
arch/m68k/amiga/platform.c
arch/m68k/amiga/platform.c
+5
-0
drivers/block/amiflop.c
drivers/block/amiflop.c
+21
-26
未找到文件。
arch/m68k/amiga/platform.c
浏览文件 @
92183b34
...
...
@@ -72,6 +72,11 @@ static int __init amiga_init_devices(void)
if
(
AMIGAHW_PRESENT
(
AMI_AUDIO
))
platform_device_register_simple
(
"amiga-audio"
,
-
1
,
NULL
,
0
);
/* storage interfaces */
if
(
AMIGAHW_PRESENT
(
AMI_FLOPPY
))
platform_device_register_simple
(
"amiga-floppy"
,
-
1
,
NULL
,
0
);
return
0
;
}
...
...
drivers/block/amiflop.c
浏览文件 @
92183b34
...
...
@@ -66,6 +66,7 @@
#include <linux/blkdev.h>
#include <linux/elevator.h>
#include <linux/interrupt.h>
#include <linux/platform_device.h>
#include <asm/setup.h>
#include <asm/uaccess.h>
...
...
@@ -1696,34 +1697,18 @@ static struct kobject *floppy_find(dev_t dev, int *part, void *data)
return
get_disk
(
unit
[
drive
].
gendisk
);
}
static
int
__init
amiga_floppy_
init
(
void
)
static
int
__init
amiga_floppy_
probe
(
struct
platform_device
*
pdev
)
{
int
i
,
ret
;
if
(
!
MACH_IS_AMIGA
)
return
-
ENODEV
;
if
(
!
AMIGAHW_PRESENT
(
AMI_FLOPPY
))
return
-
ENODEV
;
if
(
register_blkdev
(
FLOPPY_MAJOR
,
"fd"
))
return
-
EBUSY
;
/*
* We request DSKPTR, DSKLEN and DSKDATA only, because the other
* floppy registers are too spreaded over the custom register space
*/
ret
=
-
EBUSY
;
if
(
!
request_mem_region
(
CUSTOM_PHYSADDR
+
0x20
,
8
,
"amiflop [Paula]"
))
{
printk
(
"fd: cannot get floppy registers
\n
"
);
goto
out_blkdev
;
}
ret
=
-
ENOMEM
;
if
((
raw_buf
=
(
char
*
)
amiga_chip_alloc
(
RAW_BUF_SIZE
,
"Floppy"
))
==
NULL
)
{
printk
(
"fd: cannot get chip mem buffer
\n
"
);
goto
out_
memregion
;
goto
out_
blkdev
;
}
ret
=
-
EBUSY
;
...
...
@@ -1792,18 +1777,13 @@ static int __init amiga_floppy_init(void)
free_irq
(
IRQ_AMIGA_DSKBLK
,
NULL
);
out_irq:
amiga_chip_free
(
raw_buf
);
out_memregion:
release_mem_region
(
CUSTOM_PHYSADDR
+
0x20
,
8
);
out_blkdev:
unregister_blkdev
(
FLOPPY_MAJOR
,
"fd"
);
return
ret
;
}
module_init
(
amiga_floppy_init
);
#ifdef MODULE
#if 0 /* not safe to unload */
void cleanup_module(void
)
static int __exit amiga_floppy_remove(struct platform_device *pdev
)
{
int i;
...
...
@@ -1820,12 +1800,25 @@ void cleanup_module(void)
custom.dmacon = DMAF_DISK; /* disable DMA */
amiga_chip_free(raw_buf);
blk_cleanup_queue(floppy_queue);
release_mem_region(CUSTOM_PHYSADDR+0x20, 8);
unregister_blkdev(FLOPPY_MAJOR, "fd");
}
#endif
#else
static
struct
platform_driver
amiga_floppy_driver
=
{
.
driver
=
{
.
name
=
"amiga-floppy"
,
.
owner
=
THIS_MODULE
,
},
};
static
int
__init
amiga_floppy_init
(
void
)
{
return
platform_driver_probe
(
&
amiga_floppy_driver
,
amiga_floppy_probe
);
}
module_init
(
amiga_floppy_init
);
#ifndef MODULE
static
int
__init
amiga_floppy_setup
(
char
*
str
)
{
int
n
;
...
...
@@ -1840,3 +1833,5 @@ static int __init amiga_floppy_setup (char *str)
__setup
(
"floppy="
,
amiga_floppy_setup
);
#endif
MODULE_ALIAS
(
"platform:amiga-floppy"
);
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录