dtc 命令

来源:互联网 发布:c语言九九乘法编程 编辑:程序博客网 时间:2024/05/29 15:28
sudo apt-get install device-tree-compiler
dtc --help

dtc -I dts -O dts -o ~/xx.dts msm8974-v2.2-mtp.dts


=============================================================================================

free 我回家看kernel,找到了,咱们以前的一个疑惑。


dts 用#include 做包含 ,直接用dtc 编译出问题。
=====================================
在msm8x94/kernel/scripts/Makefile.lib
dtc_cpp_flags  = -Wp,-MD,$(depfile).pre.tmp -nostdinc                    \
 -I$(srctree)/arch/$(SRCARCH)/boot/dts                   \
 -I$(srctree)/arch/$(SRCARCH)/boot/dts/include           \
 -undef -D__DTS__


cmd_dtc = $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
$(objtree)/scripts/dtc/dtc -O dtb -o $@ -b 0 \
-i $(dir $<) $(DTC_FLAGS) \
-d $(depfile).dtc.tmp $(dtc-tmp) ; \
cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)


$(obj)/%.dtb: $(src)/%.dts FORCE
$(call if_changed_dep,dtc)
=====================================
从cmd_dtc这里,可以看出来,他用cpp 做了个预处理,在用dtc去编译

=============================================================================================

cpp -Wp,-MD,x.pre.tmp -nostdinc -I. -Iinclude  -undef -D__DTS__ -x assembler-with-cpp -o x.dts.tmp qcom/msm8994-v2-mtp.dts

dtc -I dts -O dts -o x.dts x.dts.tmp


=================================================================================================

.
├── bin
│   ├── convert-dtsv0
│   ├── dtc
│   ├── dtdiff
│   ├── fdtdump
│   ├── fdtget
│   └── fdtput
└── share
    ├── doc
    │   └── device-tree-compiler
    │       ├── changelog.Debian.gz
    │       ├── copyright
    │       ├── dtc-manual.txt.gz
    │       ├── dtc-paper.dvi.gz
    │       ├── dtc-paper.pdf.gz
    │       ├── dtc-paper.ps.gz
    │       └── README.Debian
    ├── doc-base
    │   ├── dtc-manual
    │   └── dtc-paper
    └── man
        └── man1
            ├── convert-dtsv0.1.gz
            ├── dtc.1.gz
            ├── dtdiff.1.gz
            ├── fdtdump.1.gz
            ├── fdtget.1.gz
            └── fdtput.1.gz

0 0