久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1523|回復: 0
打印 上一主題 下一主題
收起左側

迅為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”,會有打印信息,如下圖所示。
卸載驅動如下圖。
測試完成。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久五月婷 | 美女久久久久久久 | 成人精品鲁一区一区二区 | av免费网站在线观看 | 台湾佬成人网 | 影音先锋中文字幕在线观看 | 亚洲精品亚洲人成人网 | 精品一二区 | 精品毛片 | 中文字幕视频一区 | 中文字幕久久精品 | 欧美精品一区二区三区在线 | 欧美精品一区二区免费 | 黄色大片在线播放 | 久久99精品久久久久久秒播九色 | 99精品久久久久久 | 日本福利在线观看 | 亚洲午夜久久久 | 久久欧美高清二区三区 | 欧美三级在线 | 久久精品电影 | 日韩喷潮| 亚洲第一在线 | 91av在线不卡| 日本一区二区三区在线观看 | 伊人激情网 | 欧美精品在线播放 | 日韩美女一区二区三区在线观看 | 亚洲国产成人在线观看 | 欧美性久久久 | 天天看逼 | 久久精品国产一区二区三区 | 日韩欧美三级电影在线观看 | 天天操天天干天天透 | 亚洲精品久久久久久一区二区 | 亚洲中午字幕 | 在线播放国产一区二区三区 | 日本不卡一区二区三区在线观看 | h片免费看 | 中文欧美日韩 | 中文欧美日韩 |