當前位置:首頁 » 操作系統 » linux中斷號

linux中斷號

發布時間: 2025-03-24 07:41:34

⑴ Linux內核中斷之獲取中斷號

Linux內核中可使用 platform_get_irq() 函數獲取 dts 文件中設置的中斷號。

函數原型: int platform_get_irq(struct platform_device *dev, unsigned int num)

定義文件: driversaseplatform.c

中斷號獲取函數 platform_get_irq() 調用流程如下:

rk3399 使用的是 GICv3 ,對應 irq_domain->name 。

文件: drivers/irqchip/irq-gic-v3.c 。

translate() 函數實現如下:

以 RockPI 4A 單板 Debian 系統Linux 4.4內核中的獲取 HDMI 中斷號為例。

1、查找中斷號

從手冊「Rockchip RK3399 TRM V1.3 Part1.pdf」中,可以查到 HDMI_IRQ 中斷號,即55。

2、 dts 配置

文件: arch/arm64/boot/dts/rockchip/rk3399.dtsi

hdmi 使用的是 GIC_SPI 中斷,按照 gic_irq_domain_translate() 函數中處理,需要將中斷號55減去32,得到 dts 中的中斷號23。

註: interrupts = <中斷類型 中斷號 中斷觸發類型 中斷分區(對應哪個CPU cluster,PPI類型中斷特有)>

3、驅動函數

文件: driversgpudrm ockchipdw_hdmi-rockchip.c

此時, irq 返回值為55。

後續會介紹 GIC 和中斷注冊等實現函數。

熱點內容
我的世界國際服伺服器pvp視頻 發布:2025-08-23 05:45:03 瀏覽:833
androidviewgroup滑動 發布:2025-08-23 05:35:44 瀏覽:318
什麼是自動配置驅動 發布:2025-08-23 05:33:23 瀏覽:392
c演算法教程 發布:2025-08-23 05:17:37 瀏覽:13
查看資料庫的表的內容 發布:2025-08-23 05:12:24 瀏覽:996
bbs論壇源碼java 發布:2025-08-23 04:39:21 瀏覽:636
如斯腳本 發布:2025-08-23 04:34:52 瀏覽:593
c語言等腰三角形 發布:2025-08-23 04:31:17 瀏覽:578
氦氣壓縮 發布:2025-08-23 04:28:20 瀏覽:257
android生成隨機數 發布:2025-08-23 04:27:36 瀏覽:752