aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/kbuild
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/kbuild')
-rw-r--r--Documentation/kbuild/makefiles.txt23
1 files changed, 23 insertions, 0 deletions
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
index 14c3f4f1b617..5198b742fde1 100644
--- a/Documentation/kbuild/makefiles.txt
+++ b/Documentation/kbuild/makefiles.txt
@@ -1186,6 +1186,29 @@ When kbuild executes, the following steps are followed (roughly):
1186 clean-files += *.dtb 1186 clean-files += *.dtb
1187 DTC_FLAGS ?= -p 1024 1187 DTC_FLAGS ?= -p 1024
1188 1188
1189 dtc_cpp
1190 This is just like dtc as describe above, except that the C pre-
1191 processor is invoked upon the .dtsp file before compiling the result
1192 with dtc.
1193
1194 In order for build dependencies to work, all files compiled using
1195 dtc_cpp must use the C pre-processor's #include functionality and not
1196 dtc's /include/ functionality.
1197
1198 Using the C pre-processor allows use of #define to create named
1199 constants. In turn, the #defines will typically appear in a header
1200 file, which may be shared with regular C code. Since the dtc language
1201 represents a data structure rather than code in C syntax, similar
1202 restrictions are placed on a header file included by a device tree
1203 file as for a header file included by an assembly language file.
1204 In particular, the C pre-processor is passed -x assembler-with-cpp,
1205 which sets macro __ASSEMBLY__. __DTS__ is also set. These allow header
1206 files to restrict their content to that compatible with device tree
1207 source.
1208
1209 A central rule exists to create $(obj)/%.dtb from $(src)/%.dtsp;
1210 architecture Makefiles do no need to explicitly write out that rule.
1211
1189--- 6.8 Custom kbuild commands 1212--- 6.8 Custom kbuild commands
1190 1213
1191 When kbuild is executing with KBUILD_VERBOSE=0, then only a shorthand 1214 When kbuild is executing with KBUILD_VERBOSE=0, then only a shorthand