首页 > 代码库 > s3c6410_中断

s3c6410_中断

<style></style>

参考:

1)USER‘S MANUAL-S3C6410XChapter 10 GPIO, Chapter 12 VECTORED INTERRUPT CONTROLLER

2)ARM1176 JZF-S Technical Reference ManualChapter 2 Programmer‘s Model, Chapter 12 Vectored Interrupt Controller Port

3)ARM Architecture Reference ManualChapter A2 Programmers‘ Model,

4)u-boot源码:

u-boot-x.x.x/cpu/s3c64xx/start.S

 

<style></style>

 

1. 中断源

 

S3C641064个中断源,0-31VIC0控制,32-63VIC1控制。产生中断时,进入IRQFIQ工作模式。

 

64个中断源的定义见USER‘S MANUAL-S3C6410X12.3 INTERRUPT SOURCE。中断源分内部中断源和外部中断源。内部中断源由S3C6410芯片的内部模块产生。外部中断源由S3C6410芯片的外部模块产生。

 

64个中断源中,外部中断的中断号分配如下:

 

<style></style>

 

 

Int. No.

Sources

Description

Group

53

INT_EINT4

External interrupt Group 1 ~ Group 9

VIC1

33

INT_EINT3

External interrupt 20 ~ 27

VIC1

32

INT_EINT2

External interrupt 12 ~ 19

VIC1

1

INT_EINT1

External interrupt 4 ~ 11

VIC0

0

INT_EINT0

External interrupt 0 ~ 3

VIC0

 

 

即:外部中断源group1-group9产生的中断的中断号为53;外部中断源group00-3号中断的中断号为04-11号中断的中断号为112-19号中断的中断号为3220-27号中断的中断号为33

 

2. 外部中断源

 

S3C一共有127个外部中断,分为10组,即group0-group9

<style></style>

Group

中断源

中断数

GPIO分布

group0

EINT0-EINT27

28

GPLGPMGPN

group1

EINT1[14:0]

15

GPAGPB

group2

EINT2[7:0]

8

GPC

group3

EINT3[4:0]

5

GPD

group4

EINT4[13:0]

14

GPF

group5

EINT5[6:0]

7

GPG

group6

EINT6[9:0]

10

GPH

group7

EINT7[15:0]

16

GPO

group8

EINT8[14:0]

15

GPP

group9

EINT9[8:0]

9

GPQ

3. S3C6410工作模式

<style></style>

各个工作模式下用到的寄存器如下:

<style></style>

除了system modeuser mode,其余6中工作模式都属于exception,优先级如下:

<style></style>

中断向量表用于存放中断处理程序的入口地址,中断向量表在0地址处

 

 

s3c6410_中断