Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
584d98be
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看板
提交
584d98be
编写于
10月 11, 2007
作者:
R
Ralf Baechle
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[MIPS] Jazz clockevent driver
Signed-off-by:
N
Ralf Baechle
<
ralf@linux-mips.org
>
上级
ea580401
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
48 addition
and
7 deletion
+48
-7
arch/mips/jazz/irq.c
arch/mips/jazz/irq.c
+48
-0
arch/mips/jazz/setup.c
arch/mips/jazz/setup.c
+0
-7
未找到文件。
arch/mips/jazz/irq.c
浏览文件 @
584d98be
...
...
@@ -6,6 +6,7 @@
* Copyright (C) 1992 Linus Torvalds
* Copyright (C) 1994 - 2001, 2003 Ralf Baechle
*/
#include <linux/clockchips.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/kernel.h>
...
...
@@ -105,3 +106,50 @@ asmlinkage void plat_irq_dispatch(void)
panic
(
"Unimplemented loc_no_irq handler"
);
}
}
static
void
r4030_set_mode
(
enum
clock_event_mode
mode
,
struct
clock_event_device
*
evt
)
{
/* Nothing to do ... */
}
struct
clock_event_device
r4030_clockevent
=
{
.
name
=
"r4030"
,
.
features
=
CLOCK_EVT_FEAT_PERIODIC
,
.
rating
=
100
,
.
irq
=
JAZZ_TIMER_IRQ
,
.
cpumask
=
CPU_MASK_CPU0
,
.
set_mode
=
r4030_set_mode
,
};
static
irqreturn_t
r4030_timer_interrupt
(
int
irq
,
void
*
dev_id
)
{
r4030_clockevent
.
event_handler
(
&
r4030_clockevent
);
return
IRQ_HANDLED
;
}
static
struct
irqaction
r4030_timer_irqaction
=
{
.
handler
=
r4030_timer_interrupt
,
.
flags
=
IRQF_DISABLED
,
.
mask
=
CPU_MASK_CPU0
,
.
name
=
"timer"
,
};
void
__init
plat_timer_setup
(
struct
irqaction
*
ignored
)
{
struct
irqaction
*
irq
=
&
r4030_timer_irqaction
;
BUG_ON
(
HZ
!=
100
);
/*
* Set clock to 100Hz.
*
* The R4030 timer receives an input clock of 1kHz which is divieded by
* a programmable 4-bit divider. This makes it fairly inflexible.
*/
r4030_write_reg32
(
JAZZ_TIMER_INTERVAL
,
9
);
setup_irq
(
JAZZ_TIMER_IRQ
,
irq
);
clockevents_register_device
(
&
r4030_clockevent
);
}
arch/mips/jazz/setup.c
浏览文件 @
584d98be
...
...
@@ -39,13 +39,6 @@ extern asmlinkage void jazz_handle_int(void);
extern
void
jazz_machine_restart
(
char
*
command
);
void
__init
plat_timer_setup
(
struct
irqaction
*
irq
)
{
/* set the clock to 100 Hz */
r4030_write_reg32
(
JAZZ_TIMER_INTERVAL
,
9
);
setup_irq
(
JAZZ_TIMER_IRQ
,
irq
);
}
static
struct
resource
jazz_io_resources
[]
=
{
{
.
start
=
0x00
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录