Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
3cdb791b
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看板
提交
3cdb791b
编写于
11月 29, 2010
作者:
L
Lennert Buytenhek
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ARM: ks8695: irq_data conversion.
Signed-off-by:
N
Lennert Buytenhek
<
buytenh@secretlab.ca
>
上级
ee04087a
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
22 addition
and
21 deletion
+22
-21
arch/arm/mach-ks8695/irq.c
arch/arm/mach-ks8695/irq.c
+22
-21
未找到文件。
arch/arm/mach-ks8695/irq.c
浏览文件 @
3cdb791b
...
...
@@ -34,29 +34,29 @@
#include <mach/regs-irq.h>
#include <mach/regs-gpio.h>
static
void
ks8695_irq_mask
(
unsigned
int
irqno
)
static
void
ks8695_irq_mask
(
struct
irq_data
*
d
)
{
unsigned
long
inten
;
inten
=
__raw_readl
(
KS8695_IRQ_VA
+
KS8695_INTEN
);
inten
&=
~
(
1
<<
irqno
);
inten
&=
~
(
1
<<
d
->
irq
);
__raw_writel
(
inten
,
KS8695_IRQ_VA
+
KS8695_INTEN
);
}
static
void
ks8695_irq_unmask
(
unsigned
int
irqno
)
static
void
ks8695_irq_unmask
(
struct
irq_data
*
d
)
{
unsigned
long
inten
;
inten
=
__raw_readl
(
KS8695_IRQ_VA
+
KS8695_INTEN
);
inten
|=
(
1
<<
irqno
);
inten
|=
(
1
<<
d
->
irq
);
__raw_writel
(
inten
,
KS8695_IRQ_VA
+
KS8695_INTEN
);
}
static
void
ks8695_irq_ack
(
unsigned
int
irqno
)
static
void
ks8695_irq_ack
(
struct
irq_data
*
d
)
{
__raw_writel
((
1
<<
irqno
),
KS8695_IRQ_VA
+
KS8695_INTST
);
__raw_writel
((
1
<<
d
->
irq
),
KS8695_IRQ_VA
+
KS8695_INTST
);
}
...
...
@@ -64,7 +64,7 @@ static struct irq_chip ks8695_irq_level_chip;
static
struct
irq_chip
ks8695_irq_edge_chip
;
static
int
ks8695_irq_set_type
(
unsigned
int
irqno
,
unsigned
int
type
)
static
int
ks8695_irq_set_type
(
struct
irq_data
*
d
,
unsigned
int
type
)
{
unsigned
long
ctrl
,
mode
;
unsigned
short
level_triggered
=
0
;
...
...
@@ -93,7 +93,7 @@ static int ks8695_irq_set_type(unsigned int irqno, unsigned int type)
return
-
EINVAL
;
}
switch
(
irqno
)
{
switch
(
d
->
irq
)
{
case
KS8695_IRQ_EXTERN0
:
ctrl
&=
~
IOPC_IOEINT0TM
;
ctrl
|=
IOPC_IOEINT0_MODE
(
mode
);
...
...
@@ -115,12 +115,12 @@ static int ks8695_irq_set_type(unsigned int irqno, unsigned int type)
}
if
(
level_triggered
)
{
set_irq_chip
(
irqno
,
&
ks8695_irq_level_chip
);
set_irq_handler
(
irqno
,
handle_level_irq
);
set_irq_chip
(
d
->
irq
,
&
ks8695_irq_level_chip
);
set_irq_handler
(
d
->
irq
,
handle_level_irq
);
}
else
{
set_irq_chip
(
irqno
,
&
ks8695_irq_edge_chip
);
set_irq_handler
(
irqno
,
handle_edge_irq
);
set_irq_chip
(
d
->
irq
,
&
ks8695_irq_edge_chip
);
set_irq_handler
(
d
->
irq
,
handle_edge_irq
);
}
__raw_writel
(
ctrl
,
KS8695_GPIO_VA
+
KS8695_IOPC
);
...
...
@@ -128,17 +128,17 @@ static int ks8695_irq_set_type(unsigned int irqno, unsigned int type)
}
static
struct
irq_chip
ks8695_irq_level_chip
=
{
.
ack
=
ks8695_irq_mask
,
.
mask
=
ks8695_irq_mask
,
.
unmask
=
ks8695_irq_unmask
,
.
set_type
=
ks8695_irq_set_type
,
.
irq_ack
=
ks8695_irq_mask
,
.
irq_mask
=
ks8695_irq_mask
,
.
irq_unmask
=
ks8695_irq_unmask
,
.
irq_
set_type
=
ks8695_irq_set_type
,
};
static
struct
irq_chip
ks8695_irq_edge_chip
=
{
.
ack
=
ks8695_irq_ack
,
.
mask
=
ks8695_irq_mask
,
.
unmask
=
ks8695_irq_unmask
,
.
set_type
=
ks8695_irq_set_type
,
.
irq_ack
=
ks8695_irq_ack
,
.
irq_mask
=
ks8695_irq_mask
,
.
irq_unmask
=
ks8695_irq_unmask
,
.
irq_
set_type
=
ks8695_irq_set_type
,
};
void
__init
ks8695_init_irq
(
void
)
...
...
@@ -164,7 +164,8 @@ void __init ks8695_init_irq(void)
/* Edge-triggered interrupts */
default:
ks8695_irq_ack
(
irq
);
/* clear pending bit */
/* clear pending bit */
ks8695_irq_ack
(
irq_get_irq_data
(
irq
));
set_irq_chip
(
irq
,
&
ks8695_irq_edge_chip
);
set_irq_handler
(
irq
,
handle_edge_irq
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录