迅为iTOP-iMX6开发板-设备树内核-中断例程

1.1 中断概述

ARM 架构 linux 内核中,有 5 种常见的异常,其中中断异常是其一,Linux 内核将所

有中断统一编号,使用一个 irq_desc 结构体来描述这些中断,里面记录了中断名称、中断状

态、中断标记、并提供了中断的底层硬件访问函数(如:清除、屏蔽、使能中断),提供了这

个中断的处理函数入口,通过它还可以调用用户注册的的中断处理函数。linux 内核的中断体

系已经很完善了,驱动工程师需要做的就是调用 request_irq 函数向内核注册中断处理函

数,下面我们来看看 request_irq 函数的定义:

static inline int __must_check

request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags,

const char *name, void *dev)

第一个参数 irq:中断号,与平台架构相关;

第二个参数 handler:用户中断处理函数;

第三个参数 flags:中断标记

第四个参数 devname:中断名字,可以通过 cat /proc/interrupts 查看;

第五个参数 dev_id:在 free_irq 中有用,也用做区分中断处理函数;

有注册就得对应着有注销,驱动的注销函数是 free_irq,其定义如下:

void free_irq(unsigned int irq, void *dev_id)

第一个参数 irq:中断号,与 request_irq 中的 irq 一致,用于定位 action 链表;

第二个参数 dev_id:用于在 action 链表中找到要卸载的表项;同一个中断的不同中断

处理函数必须使用不通的 dev_id 来区分,这就要求在注册中断共享时参数 dev_id 必须唯

一。

1.2 设备树文件修改

这里我们选用 back 按键用于测试,它的网络标号是“DISP0_WR”,对应的 IO 管脚编

号是“NANDF_WP”,对应的宏定义为“MX6QDL_PAD_NANDF_WP_B__GPIO6_IO09 ”

这个管脚在 gpio-keys 驱动中已经使用,我们需要在设备树中将其屏蔽,然后在设备树

文件中增加测试例程的设备树代码。

打开“arch/arm/boot/dts/imx6qdl-sabresd.dtsi”设备树文件。

将 gpios = <&gpio6 9 GPIO_ACTIVE_LOW>; 屏蔽掉,如下图所示。

在“itop_max485_ctl”之后添加以下代码:

key_int{

compatible = "itop,key_int_name";

pinctrl-names = "default";

gpio_key_int = <&gpio6 9 GPIO_ACTIVE_LOW>;

status = "okay";

};

添加完成之后如下图所示,

重新烧写设备树文件,在开发板“/sys/bus/platform/device”目录下会有 key_int 文件

夹生成,表明设备注册完成。

1.3 测试驱动

驱动源码在压缩包“独立中断例程_V1.0”中。

使用“insmod key_int.ko”命令加载驱动模块。如下图。

按下按键“Back”,会有打印信息,如下图所示。

卸载驱动如下图。

测试完成。

原文地址:https://www.cnblogs.com/mingyue77/p/11428484.html

时间: 2024-11-12 15:36:51

迅为iTOP-iMX6开发板-设备树内核-中断例程的相关文章

迅为IMX6开发板支持4G全网通模块GPS模块

IMX6开发板特点 处理器:IMX6开发板支持4G全网通模块GPS模块. 核心板配置:2GB DDR3内存  16GB EMMC 存储,扩展引脚多达320个:运行温度-20 ℃到+80 ℃之间. 核心板连接器:经过大批量检验的核心板连接方式,更优的排列更放心的连接性能. 丰富接口:支持全网通4G模块.GPS模块.WIFI蓝牙.SATA 接口.CAN 总线 千兆以太网.重力加速度计.CAMERA接口等. 设计技术:八层PCB沉金设计,紧凑精致!完美解决电磁兼容,达到成本与性能的完美统一,更加技高一

迅为IMX6开发板真实产品案例分享-专为研发用芯选择

迅为IMX6开发板: Android4.4系统 Linux + Qt5.7系统 Ubuntu12.04系统 部分真实案例:HMI:3D打印机:医疗设备:工控机:触控一体机:车载终端 核心板兼容:IMX6Q商业级.IMX6Q工业级.IMX6Q-PLUS.IMX6DL版本 板载:4G全网通.GPS.千兆以太网.WIFI蓝牙.CAN总线.RS485总线.EIM总线模块 光盘资料:原理图(PDF格式).底板PCB(Allegro格式).驱动程序源码.芯片和LCD数据手册.开发环境.产品使用手册 网盘资料

ARM开发板怎么选择?迅为-IMX6开发板来详情解说

迅为-I.MX6开发板 Cortex-A9四核I.MX6Q,主频1G,2G内存,16G存储,支持4G全网通,GPS WIFI蓝牙模块,千兆以太网,摄像头,SATA等接口,多屏异显,双屏同显 核心板参数: 尺寸:51mm*61mm CPU:Freescale Cortex-A9 四核 i.MX6Q,主频 1 GHz 内存:2GB DDR3 存储:16GB EMMC 存储 电源管理:内部独立 工作电压:5V 系统支持:Linux-QT/Android/Ubuntu操作系统 引角扩展:引出脚多达320

围观迅为IMX6开发板QT下LVDS和HDMI如何双屏异显的

首先将迅为-IMX6开发板分别连接9.7寸屏和HDMI显示器 然后使用MfgTool工具烧写QT系统 然后拨码开关设置成从emmc启动 在uboot命令行下设置开发板为9.7寸屏显示(这样也会同时设置HDMI) 设置完,保存配置,如下图: 然后设置启动QT系统,并保存设置,如下图: 然后开发板重新启动,可以看到默认9.7寸屏显示qt的触摸校准程序了,点击屏幕校准,最后会在9.7寸屏上运行QT的demo程序.HDMI显示通道默认是关闭的,在串口命令行下输入命令"echo 0 > /sys/c

迅为-IMX6开发板十层PCB制造,24小时开机测试,满负荷测试运行俩天,没有死机

迅为-IMX6开发板--工业主板的优势 1.元器件 IMX6工业主板选料,选用经过长时间.高要求验证元器件,保证产品在复杂条件下,耐高温.抗潮湿等工业场合的需求. 2.PCB设计 IMX6工业主板采用的是10层PCB沉金设计,加强主板的抗电磁干扰.电磁兼容能力,增强主板的稳定性 3.处理器 迅为-IMX6开发板:Freescale Cortex-A9 四核 i.MX6Q,主频 1.2 GHz 4.接口设计 迅为-IMX6开发板严格通过电磁兼容.高低温坏境.脉冲群.雷击浪涌.静电.耐压等测试确保长

iMX6Q/PLUS开发板烧写设备树内核的Ubuntu系统

基于迅为-iMX6D.iMX6Q 和 iMX6PLUS 三个硬件版本,设备树镜像的烧写方法以及镜像所在目录,镜像名称全部一致,所以作者将烧写章节合并到一起. 请注意,如果购买的是 iMX6D 版本,想要烧写设备树版本镜像,请使用 iMX6D 设备树版本的光盘(iMX6D 还有一个非设备树版本的光盘): 如果购买的是 iMX6Q 版本,想要烧写设备树版本镜像,请使用 iMX6Q 设备树版本的光盘(iMX6Q 还有一个非设备树版本的光盘): 如果购买的还是 PLUS 版本,请使用 PLUS 版本的光

嵌入式开发-迅为IMX6开发板硬件详情介绍

迅为-I.MX6开发板 Cortex-A9四核I.MX6Q,主频1G,2G内存,16G存储,支持4G全网通,GPS WIFI蓝牙模块,千兆以太网,摄像头,SATA等接口,多屏异显,双屏同显 2.POWER电源接口 电源输入为 12V/2A+,给底板供电. 原理图部分如下图所示. 电源接口位置如下图所示. 3.SWITCH电源开关 轻触电源开关可以控制开发板电源通断. 原理图部分如下图所示. 如下图所示. 4. 7位拨码开关 7 位拨码开关控制 iMX 启动模式. 原理图部分如下图所示. 如下图所

iMX6开发板烧写Android系统

平台:迅为-imx6开发板 系统:Android 4.4系统 镜像文件在光盘目录"04_源码_android4.4 文件系统"下.将其拷贝到前一小节解压的得到目录的"Profiles\MX6Q Linux Update\OS Firmware\files\android"文件夹下,如下图所示. 打开"Mfgtools-Rel-1.1.0_121218_MX6Q_UPDATER_V2.0\Mfgtools-Rel-1.1.0_121218_MX6Q_UPDA

嵌入式开发首选迅为I.MX6开发板 高稳定工业级设计

北京迅为电子有限公司专业提供ARM开发板,嵌入式开发板,三星4412开发板,三星4418开发板,八核6818开发板,飞思卡尔I.MX6开发板,三星4412核心板,exynos4412开发板及面向客户指定完整的解决方案服务 迅为-i.MX6开发板是采用Freescale Cortex-A9 四核i.MX6Q处理器,主频1GHz,2G DDR3内存,16GB EMMC存储,i.MX6开发板采用核心板+底板结构设计,高品质,稳定性强 ,可以更灵活地进行产品开发,快速设计出更具有竞争力的产品. 详情了解