一. 简介
前面说过,在新版本的 Linux 中,ARM 相关的驱动全部采用了设备树(也有支持老式驱动的,比较少),最新出的 CPU 其驱动开发也基本都是基于设备树。所以,掌握设备树是 Linux 驱动开发人员必 备的技能!
本文学习一下 设备树源文件 即 dts文件,以及 dts文件的组织形式。
二. dts文件(设备树源文件)以及组织形式
1. DTS、DTB 和 DTC 几个区别?
设备树源文件扩展名为.dts,但是我们在前面移植 Linux 的时候却一直在使用 .dtb 文件,那么 DTS 和 DTB 这两个文件是什么关系呢?
DTS 是设备树源码文件,DTB 是将 DTS 编译以后得到的二进制文件。将 .c 文件编译为 .o 需要用到 gcc 编译器,那么将.dts 编译为.dtb 需要什么工具呢?需要用到 DTC 工具!DTC 工具源码在 Linux 内核的 scripts/dtc 目录下。
2. 编译设备树
编译设备树文件的方法有几种。如下:
(1) 方法一:直接编译内核源码,就同时编译了设备树文件。进入