導航:首頁 > 文件教程 > linuxdtsi文件

linuxdtsi文件

發布時間:2023-01-10 02:20:32

1. 如何找到kernel所用的dtsi

想要知道kernel/arch/arm/dts/qcom/目錄下那麼多的dtsi文件到底用了哪個,有幾個途徑

首先看qcom目錄下的makefile

dtb-$(CONFIG_ARCH_MSM8916) += msm8916-sim.dtb \

msm8976-mtp.dtb \
msm8976-mtp-asusevb.dtb \

msm8956-mtp.dtb \
msm8956-mtp-asusevb.dtb \

然後在/out/target/proct/Z00T/obj/KERNEL_OBJ的.config里去找這個CONFIG_ARCH_MSM8916

看到是CONFIG_ARCH_MSM8916=y

所以這樣還不能確定,只能在開機的kernel log里看

[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] linux version 3.10.84-g13ef38a-dirty (matthew@matthew) (gcc version 4.9.x-google 20140827 (prerelease) (GCC) ) #3 SMP PREEMPT Sun Dec 6 11:17:54 CST 2015
[ 0.000000] CPU: AArch64 Processor [410fd034] revision 4
[ 0.000000] Machine: Qualcomm Technologies, Inc. MSM8976 MTP
[ 0.000000] No earlyprintk arguments passed.

在qcom下grep Qualcomm Technologies, Inc. MSM8976 MTP 發現在msm8976-mtp-asusevb.dts里,所以知道用了那個

2. 編譯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

3. Linux內核dvfs之cpufreq配置

本文基於 RockPi 4A 單板 Linux4.4 內核介紹 OPP Table 。

內核中將頻率、電壓的相關配置放在 DTSI 文件中,這些配置信息組成的節點被稱為 OPP Table(Operating Performance Points) 。

定義文件: arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi ,內容如下:

上面節點中的相關屬性含義如下:

1、 opp-shared :表示 opp-table1 是小核的各 CPU 共用。

2、 rockchip,temp-hysteresis :遲滯參數,防止頻繁進入高溫或低溫,單位:毫攝氏度。

3、 rockchip,low-temp :低溫閾值。小於該值時,進入低溫,大於『該值+遲滯參數』時,恢復常溫。

4、 rockchip,low-temp-min-volt :低溫下最低電壓,單位:微伏。

5、 nvmem-cells :從 eFUSE 中讀取相關信息值(小核漏電流)。

6、 rockchip,pvtm-voltage-sel :min-pvtm(單位KHz)、max-pvtm(單位KHz)和 voltage-selector (用於匹配 opp 節點中 opp-microvolt-L* 屬性的序列號)。例:pvtm值為:0 ~ 143500 使用 opp-microvolt-L0 ,143501 ~ 148500使用 opp-microvolt-L1

7、 rockchip,pvtm-freq :時鍾頻率(KHz),在獲取 pvtm 的頻率前,先設置 CPU 頻率。

8、 rockchip,pvtm-volt :電壓(微伏),在獲取 pvtm 的頻率前,先設置 CPU 電壓。

9、 rockchip,pvtm-ch : PVTM 通道,格式<通道號 sel的序號>

10、 rockchip,pvtm-sample-time : PVTM 采樣時間,單位:毫秒。

11、 rockchip,pvtm-number : PVTM 采樣個數。

12、 rockchip,pvtm-error :允許采樣數據之間的誤差。

13、 rockchip,pvtm-ref-temp :參考溫度。

14、 rockchip,pvtm-temp-prop : PVTM 隨溫度變化的比例系數,格式<小於參考溫度的比例系數 大於參考溫度的比例系數>。

15、 rockchip,thermal-zone :獲取溫度的 thermal-zone 。

16、 opp-microvolt-L* :電壓(微伏),格式<target min max>

17、 clock-latency-ns :完成變頻需要的時間,單位:納秒。

在 RK3399 中,除了配置上述小核的 opp table 外,還設置了大核( cluster1_opp )、 gpu(gpu_opp_table) 等的相關值。查看命令如下:

註:

CPU PVTM(Process Voltage Temperature Monitor) 是一個位於 CPU 附近,能反應出不同晶元之間性能差異的模塊,受工藝,電壓和溫度 的影響。

參考:

Documentation/devicetree/bindings/cpufreq/cpufreq-rockchip.txt

Documentation/devicetree/bindings/cpufreq/cpufreq-rockchip.txt

4. openwrt怎麼修改linux的dts文件

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

5. 如何在Zynq 7000平台上使用Linux spidev.c驅動

一、在前來一篇博客中,我們採用自xilinx針對Zynq 7000處理器提供的spi-cadence.c驅動實現了晶元上SPI匯流排驅動的注冊,接下來需要修改設備樹文件以時我們的外設掛接在SPI匯流排下。
在petalinux工程的../subsystems/linux/configs/device-tree目錄下找到zynq相關的設備樹文件,目錄所包含的文件如下圖所示。

打開其中的zynq-7000.dtsi文件,找到其中的spi0節點(具體使用spi0還是spi1根據硬體工程的配置情況),並在該節點下添加如下內容:

6. linux下dts文件中斷號怎麼設置

使用chmod 這個命令來對文件夾修改許可權 例如對tmp目錄下面的aaa文件夾修改許可權 r 是讀許可權 用數字表示是 4 w 是寫許可權 用數字表示是 2 x 是執行許可權 用數字表示是 1 chmod 644 /tmp/aaa 6代表是所有者許可權 4 代表是用戶組許可權 4代表是其他用戶許可權

7. dtsi文件怎麼打開

vi命令打開。dtsi文件使用vi命令打開。dtsi文件用於描述SOC的內部外設信息,比如CPU架構、主頻、外設寄存器地址范圍,比如UART、IIC等等。

8. 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 和中斷注冊等實現函數。

9. 嵌入式linux 修改dts文件同時需要修改preloader么

U-Boot 引入了扁平設備樹FDT 這樣的動態介面,使用一個單獨的FDT blob(二進制內大對象,是一個可以容存儲二進制文件的容器)存儲傳遞給內核的參數[3]。一些確定信息,例如cache 大小、中斷路由等直接由設備樹提供,而其他的信息,例如eTSEC 的MAC 地址、頻率、PCI 匯流排數目等由U-Boot 在運行時修改。U-Boot 使用扁平設備樹取代了bd_t,而且也不再保證對bd_t 的後向兼容。需要修改的,重新編譯dts文件。

10. 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 文件後,重新編譯內核。

閱讀全文

與linuxdtsi文件相關的資料

熱點內容
word2007層次結構 瀏覽:456
去掉文件名的數字 瀏覽:713
word公司 瀏覽:710
淘寶店數據包怎麼上傳 瀏覽:341
pbt文件 瀏覽:204
HX基礎編程怎麼改變字體 瀏覽:876
怎麼開網路教學 瀏覽:915
630升級工程武器 瀏覽:936
用換機助手接收的軟體文件在哪找 瀏覽:282
閱達app一教一輔五年級有哪些 瀏覽:7
win10系統用f2調節音量 瀏覽:19
壓縮文件密碼器 瀏覽:840
線下活動數據分析有哪些 瀏覽:314
助聽器插片式編程線如何連接 瀏覽:293
怎麼刪除系統休眠文件 瀏覽:914
搜索文件內容中包含的文字並替換 瀏覽:542
微信相冊程序圖標 瀏覽:714
win8怎麼顯示文件格式 瀏覽:547
文件伺服器中毒 瀏覽:721
如何修改網站訪問次數 瀏覽:518

友情鏈接