the zephyr device-tree mechanism seems not identical with the linux dirver, right?


曹子龙
 

Hi all:
     from  the dtc compiler command in Makefile.lib  document, the device tree of zepher project are  compiler to  "DTS" file, not the blob file "DTB" type, so, and then convert to header filles by python and yamal script,

so, seems the device tree is a just method to control in compiler time, not runtime with"of_xxx“ funtions like Linux kernel, right?



cmd_dtc = echo '\#include "$(notdir $<)"' > dts/$(ARCH)/$(notdir $<)_pre_compiled ; \                                                                                                                           
294         if test -e $(DTC_OVERLAY_FILE); then \
295                 echo '\#include "$(DTC_OVERLAY_FILE)"' >> dts/$(ARCH)/$(notdir $<)_pre_compiled ; \
296         fi ; \                    
297         $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) dts/$(ARCH)/$(notdir $<)_pre_compiled ; \
298         $(DTC) -O dts -o $@ -b 0 \
299                 -i $(dir $<) $(DTC_FLAGS) \
300                 -d $(depfile).dtc.tmp $(dtc-tmp) ; \
301         cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)