Linux 设备树中的dtc dts/dtsi dtb的关系梳理:
dtc:用来编译设备树的工具
dts:设备树描述文件
dtsi:设备树头文件
dtb:编译后的二进制文件
dtc设备树编译工具
dtc是用来编译设备树的工具,就像gcc可以用来编译C语言一样,设备树源文件也需要编译器来对它进行编译,而这个编译器就是dtc。
dtc工具的源代码在内核根目录下的/scripts/dtc文件夹中,在对应的Makefile中可以看到内核将跟dtc有关的文件都进行编译,最后生成一个可执行程序。
dts是设备树的源文件,驱动开发者需要在dts文件中构造描述板级的设备树,其位置一般位于内核根目录下的/arch/arm/boot/dts(以arm架构为例)。dts编写好之后会用dtc来进行编译,最后会生成dtb二进制文件。
dtsi:设备树头文件
设备树就像C语言,同样可以进行头文件包含。开发者通常会把同一个品牌芯片的共同点提取出来,将相同的代码写成一个头文件供其他文件包含。包含dtsi文件跟C语言的头文件包含用法一样,也是include"xxx.dtsi"。
dtb:设备树二进制文件
dtb是由dts/dtsi被编译后生成的二进制文件,dtb文件是可以被内核解析的文件,所以dtb文件会被烧到系统中,由uboot指定dtb的地址供内核去读取。
幼儿园第一!: 你这重启之后不会变模糊吗,我每次进去都得调分辨率
yjw67: 我的情况跟你一样,但是我按你这个方法也不行