百问网技术交流群,百万嵌入式工程师聚集地:
https://www.100ask.net/page/2248041
资料下载
coding无法使用浏览器打开,必须用git工具下载:
git clone https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git
视频观看
百问网驱动大全
链式中断控制器驱动程序编写_linear方式
- 资料下载
- 视频观看
- 1. 两种方式的对比
- 2. 编程
- 3. 上机实验
参考资料:
-
linux kernel的中断子系统之(七):GIC代码分析
-
Linux 4.9.88内核源码
Linux-4.9.88\drivers\gpio\gpio-mxc.cLinux-4.9.88\arch\arm\boot\dts\imx6ull.dtsi
-
Linux 5.4内核源码
Linux-5.4\drivers\pinctrl\stm32\pinctrl-stm32mp157.cLinux-5.4\drivers\irqchip\irq-stm32-exti.cLinux-5.4\arch\arm\boot\dts\stm32mp151.dtsi
-
本节视频源码在GIT仓库里
doc_and_source_for_drivers\ IMX6ULL\source\08_Interrupt\ 05_virtual_int_controller_linear_ok doc_and_source_for_drivers\ STM32MP157\source\A7\08_Interrupt\ 05_virtual_int_controller_linear_ok
1. 两种方式的对比
linear、legacy方式,都是用来编写链式中断控制器驱动程序,它们的关系如下表所示。
| legacy | linear | |
|---|---|---|
| 函数 | irq_domain_add_legacy | irq_domain_add_linear |
| irq_desc | 一次性分配完 | 用到再分配 |
| (hwirq,virq) | domain->linear_revmap[hwirq] = irq_data->irq; | 同左边 |
2. 编程
3. 上机实验
跟上节视频操作完全一样,参考《16_legacy方式代码的上机实验.md》
百问网技术交流群,百万嵌入式工程师聚集地:
https://www.100ask.net/page/2248041
百问网技术论坛:
http://bbs.100ask.net/
百问网嵌入式视频官网:
https://www.100ask.net/index
百问网开发板:
淘宝:https://100ask.taobao.com/
天猫:https://weidongshan.tmall.com/
