導航:首頁 > 編程系統 > linuxdts基本語法

linuxdts基本語法

發布時間:2024-06-25 00:24:23

『壹』 linux dts status status 做什麼用

設備在啟動的時候,status定義陪前擾為蘆旦disabled為不注冊;
定義為ok/okay或者為悔州賦值,默認為解析該設備節點

『貳』 編譯linux內核設備樹文件使用什麼命令

Linux源碼的arch/powerpc/boot/dts/目錄下存放了很多dts文件,可以作為參考文件。另外dtc編譯器在內核回源碼2.6.25版本之後已經答被包含進去。在2.6.26版本之後,生成blob的簡單規則已經加入makefile,如下命令:
$ make ARCH=powerpc canyonlands.dtb

也可以根據自己的硬體修改好dts文件後,用下面類似命令生成dtb文件。
$ dtc -f -I dts -O dtb -R 8 -S 0x3000 test.dts > mpc836x_mds.dtb

$ mkimage -A ppc -O Linux -T flat_dt -C none -a 0x300000 -e 0 -d mpc836x_mds.dtb mpc836x_mds.dtu

『叄』 Linux內核watchdog

本文基於 RockPi 4A 單板 Linux 4.4 內核介紹 RK3399 看門狗( watchdog )的調試方法。

一、驅動文件

RK3399 watchdog 用的是新思( Synopsys )的 IP ,在 watchdog 驅動程序載入時,會注冊 misc 設備,節點為 /dev/watchdog 。

驅動文件: drivers/watchdog/dw_wdt.c

二、DTS配置

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

watchdog 具體配置如下:

三、調試方法

1、關閉看門狗

寫入除大寫 V 以外的任意字元,不再喂狗,一段時間後系統會重啟。

例:

2、打開卡門狗

寫入大寫 V ,繼續喂狗,系統不再重啟。

例:

3、CONFIG_WATCHDOG_NOWAYOUT

如果配置了 CONFIG_WATCHDOG_NOWAYOUT ,通過 echo 命令寫入任何字元,都不會關閉喂狗。

例:

註:

使用 ./build/mk-kernel.sh rockpi4a 編譯內核時,即使修改了 rockchip_linux_defconfig 文件,編譯時,相關配置也不會生效。需要在編譯前 make distclean 或刪除內核根目錄下的 .config 文件後,重新編譯內核。

『肆』 Linux內核中斷之中斷調用流程

本文基於 RockPI 4A 單板Linux4.4內核介紹中斷調用流程。

ARMv8包括兩種運行狀態:AArch64和AArch32。

AArch64中不再使用AArch32中的7種特權模式,而是提出了Exception Levels的概念,包括:

1)EL0:用於用戶態程序,許可權最低

2)EL1:給內核使用,許可權稍高

3)EL2:虛擬化相關,許可權更高

4)EL3:安全相關,許可權最高

Linux內核中一般只使用EL0和EL1。

AArch64異常向量表中的異常包括:

1)Synchronous exception(同步異常)

2)SError

3)IRQ

4)FIQ

註:SError、IRQ和FIQ屬於非同步異常。

在Linux內核中,在 arch/arm64/kernel/entry.S 文件中定義了異常向量表,內容如下:

選取 el1_irq() 函數介紹Linux內核中斷的調用流程。

文件: arch/arm64/kernel/entry.S ,調用流程如下:

1、handle_irq()初始化

在 DTS 解析階段完成 handle_irq() 函數的初始化,流程如下:

gic_irq_domain_map() 函數中完成了 handle_irq() 函數的賦值,具體執行如下:

2、handle_irq()實現

以共享外設中斷 SPI 的中斷處理函數 handle_fasteoi_irq() 為例,繼續跟蹤中斷的執行過程。

handle_irq_event_percpu() 函數會調用已經注冊的中斷處理函數,同時喚醒 irq_thread 線程。

3、中斷處理線程

在使用 request_threaded_irq() 函數申請中斷時,會創建一個 irq_thread 線程,調用流程如下:

irq_thread 線程平時在睡眠狀態,等待 handle_irq_event_percpu() 函數喚醒,進一步執行已注冊的中斷處理線程函數。

使用 DRM 框架中 HDMI 中斷驗證中斷調用流程。

文件: driversgpudrmridgesynopsysdw-hdmi.c

在中斷處理函數 dw_hdmi_hardirq() 和中斷處理線程函數 dw_hdmi_irq 中增加 mp_stack() 調用( 註:僅限於調試驗證 )。

插入 HDMI 線,系統啟動後,顯示中斷調用流程的日誌如下:

『伍』 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 和中斷注冊等實現函數。

『陸』 arm linux dts鎬庝箞閰嶇疆ddr3

FDT鏄疉RM Linux鏈鏂扮殑璁懼囬┍鍔ㄧ▼搴忎俊鎮琛錛屼嬌鐢‵DT鐨勫唴鏍革紝灝變笉鐢ㄥ儚榪囧幓鐨勫唴鏍擱偅鏍鳳紝涓涓鏉垮瓙鍔犱竴涓猰ach鐨凜鏂囦歡錛屾墍鏈夌殑璁懼囦俊鎮鍙浠ヨ板綍鍦ㄤ竴涓鏍戠姸淇℃伅鏂囦歡閲岄潰銆 鐩鍓嶈繖鏂歸潰璧勬枡姣旇緝灝戱紝鎴戜互AM335x澶勭悊鍣ㄤ負渚嬫傛嫭涓涓婩DT鐨勪嬌鐢錛 FDT浠呬粎鏄涓涓淇℃伅鐨勭洰褰曞拰鍙傛暟琛錛岃佷嬌鐢ㄦ煇涓鍔熻兘鍐呮牳涓榪樺繀欏繪湁鐩稿簲鐨勯┍鍔ㄧ▼搴忎唬鐮 FDT鐨勬簮鏂囦歡浣嶇疆鍦錛歛rch/arm/boot/dts錛屼緥濡傦紝TI鐨凚eagle bone black錛屾簮鏂囦歡鏄痑rch/arm/boot/dts/am335x_boneblack.dts FDT鍦╩ake ARCH=arm鐨勬椂鍊欏氨浼氳嚜鍔ㄧ敓鎴愶紝涔熷彲鐢╩ake ARCH=arm dtbs鏉ョ敓鎴愶紝渚嬪俆I鐨凚eagle bone black鐢熸垚鐨勬枃浠舵槸arch/arm/boot/dts/am335x_boneblack.dtb錛岃繖鏄涓涓浜岃繘鍒舵枃浠 瑕佹兂鏂板炰綘鑷瀹氫箟鐨凢DT錛岃蜂慨鏀筧rch/arm/boot/dts/Makefile錛屽苟鍦ㄧ浉搴旂殑Kconfig涓澧炲姞config閫夐」錛屼緥濡

『柒』 openwrt怎麼修改linux的dts文件

在linux下要修改文件,一般較常用的命令是vi,格式如下:vi
[文件]。
以樓主的文件為例,vi
/etc/passwd

『捌』 瀹夊崜dts涓巐inuxdts

瀹夊崜dts涓巐inuxdts鏄涓や釜涓嶅悓鐨勬傚康銆傚敖綆′袱鑰呴兘浣跨敤dts浣滀負鏂囦歡鎵╁睍鍚嶏紝騫朵笖閮界敤浜庢弿榪扮‖浠惰懼囩殑淇℃伅錛屼絾Androiddts鍜孡inuxdts鏄閽堝逛笉鍚屾搷浣滅郴緇熺殑涓嶅悓瀹炵幇銆侫ndroiddts涓昏佺敤浜庢弿榪癆ndroid璁懼囩‖浠朵笌Android鎿嶄綔緋葷粺涔嬮棿鐨勫叧緋伙紝鑰孡inuxdts涓昏佺敤浜庢弿榪癓inux鍐呮牳涓庣‖浠朵箣闂寸殑鍏崇郴銆

閱讀全文

與linuxdts基本語法相關的資料

熱點內容
在java的菜單如何導入文件 瀏覽:982
現在什麼網站銷量最高 瀏覽:760
angularjsclass定義 瀏覽:157
ug數控編程怎麼導出程序 瀏覽:466
cmdb文件 瀏覽:710
鵯文件夾 瀏覽:763
網路輿情應對的基本理念是什麼 瀏覽:433
word2007層次結構 瀏覽:456
去掉文件名的數字 瀏覽:713
word公司 瀏覽:710
淘寶店數據包怎麼上傳 瀏覽:341
pbt文件 瀏覽:204
HX基礎編程怎麼改變字體 瀏覽:876
怎麼開網路教學 瀏覽:915
630升級工程武器 瀏覽:936
用換機助手接收的軟體文件在哪找 瀏覽:282
閱達app一教一輔五年級有哪些 瀏覽:7
win10系統用f2調節音量 瀏覽:19
壓縮文件密碼器 瀏覽:840
線下活動數據分析有哪些 瀏覽:314

友情鏈接