rt5350 中断处理分析
1. arch/mips/kernel/genex.S
j plat_irq_dispatch
2. arch/mips/rt2880/irq.c
plat_irq_dispatch
rt2880_irqdispatch
do_IRQ
do_IRQ定义在 include/asm-mips/irq.h 这个头文件中,asm-mips这个目录链接到asm这里,所以在
arch/mips/rt2880/irq.c这个文件中 #include <asm/irq.h>
#define do_IRQ(irq) \
do { \
irq_enter(); \
__DO_IRQ_SMTC_HOOK(irq); \
generic_handle_irq(irq); \
irq_exit(); \
} while (0)
generic_handle_irq定义在 include/linux/irq.h 中,arch/mips/rt2880/irq.c这个文件中 #include <linux/hardirq.h>
在 include/linux/hardirq.h 中 #include <asm/hardirq.h> ,在 include/asm_mips/hardirq.h 中 #include <linux/irq.h>
至此, do_IRQ和 generic_handle_irq 都被包含进了arch/mips/rt2880/irq.c中了。
static inline void generic_handle_irq(unsigned int irq)
{
struct irq_desc *desc = irq_desc + irq;
#ifdef CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ
desc->handle_irq(irq, desc);
#else
if (likely(desc->handle_irq)){
desc->handle_irq(irq, desc);
}
else{
__do_IRQ(irq);
}
#endif
}
最终调用到了我们熟悉的desc->handle_irq
rt5350 中断处理分析相关推荐
- linux中断处理模式,Linux在保护模式下的中断处理分析.pdf
Linux在保护模式下的中断处理分析.pdf Linux 在保护模式下的中断处理分析 刘万里 杨 斌 (西南交通大学计算机与通信工程学院,成都 610031) E-mail:awan@ 摘 要 该文以 ...
- Linux 0.11 内核解析:中断相关(1)asm.s文件中断处理分析
0 源代码 有两个版本的,一个是带中文注释,Intel格式的:一个是不带注释是AT&T格式的. Linux 0.11 中文注释版 Linux 0.11 源码,基于<Linux内核完全注释 ...
- ARM GIC简介与Linux中断处理分析
先简单说明一下GIC(具体详尽的介绍请查阅ARM GIC相关文档) GIC即general interrupt controller. 它是一个架构,版本历经了GICv1(已弃用),GICv2,GIC ...
- chinaunix 内核源码分析精贴
1. 内核学习方法,编译.调试等常见问题 1.1 关于编译升级内核到2.6.0的一些问题 作者:ommm http://linux.chinaunix.net/bbs/thread-2 ...
- Linux内核设计第五周学习总结 分析system_call中断处理过程
陈巧然原创作品 转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 使用gdb跟踪分析一 ...
- Exynos4412 中断驱动开发(二)—— 中断处理流程分析
前面已经学习了中断的注册过程,下面由一张流程图来看一下当中断发生时的处理流程: 中断发生之后处理流程 a -- 具体的CPU architecture相关模块进行现场保护,然后调用machine dr ...
- 实验5 :分析system_call中断处理过程
分析system_call中断处理过程 上周我们使用gcc内嵌汇编调用系统调用,这次我们具体分析下过程. 将getpid嵌入menuos 代码从github下载,步骤如下: 1. 增加一个函数,get ...
- 分析system_call中断处理过程
分析system_call中断处理过程 上周我们使用gcc内嵌汇编调用系统调用,这次我们具体分析下过程. 将getpid嵌入menuos 代码从github下载,步骤如下: 1. 增加一个函数,get ...
- linux EHCI DRIVER之中断处理函数ehci_irq()分析(一)
EHCI 的 interrupt 在 HCD 中被分为了 6 种类型,如下宏定义: /* these STS_* flags are also intr_enable bits (USBINTR) * ...
最新文章
- 虚拟机实现二层交换机_局域网SDN技术硬核内幕 5 虚拟化网络的实现
- 上的介质簇的结构不正确_百面机器学习笔记 | 第八章:采样 | 07 不均衡样本集的重采样...
- xBIM WeXplorer 设置模型颜色
- 归并排序模板(附求逆序对)
- Java中ClassLoader浅析.
- 最容易被盗的密码,你中了么?
- Springmvc 返回html视图解决
- java web前端邮件,javaweb之javamail
- MySQL提取字符串中数字(自定义函数)
- Electron实现Zbar开源工具解码一维码和二维码
- 笔记本电脑如何查看wifi密码
- 转:查理·芒格:让打击和麻烦成为成长的契机
- spring cloud gateway filters学习
- 【友盟】 微博分享缺少C8998文件
- Dubbo源码分析(三) -- Dubbo的服务发现源码深入解析4万字长文
- 你知道icp许可证与edi许可证的区别吗
- Android:高德SDK的基本使用
- OPENGL中GLU和GLUT工具箱
- redis系列(一)
- css一些美化页面的方法