Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge branch 'all-dtbs' into dt/next

+102 -195
+36 -1
Makefile
··· 1071 1071 # Carefully list dependencies so we do not try to build scripts twice 1072 1072 # in parallel 1073 1073 PHONY += scripts 1074 - scripts: scripts_basic asm-generic gcc-plugins $(autoksyms_h) 1074 + scripts: scripts_basic scripts_dtc asm-generic gcc-plugins $(autoksyms_h) 1075 1075 $(Q)$(MAKE) $(build)=$(@) 1076 1076 1077 1077 # Things we need to do before we recursively start building the kernel ··· 1214 1214 -m $(objtree)/.config \ 1215 1215 $(srctree)/tools/testing/selftests/*/config 1216 1216 +$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig 1217 + 1218 + # --------------------------------------------------------------------------- 1219 + # Devicetree files 1220 + 1221 + ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/boot/dts/),) 1222 + dtstree := arch/$(SRCARCH)/boot/dts 1223 + endif 1224 + 1225 + ifneq ($(dtstree),) 1226 + 1227 + %.dtb: prepare3 scripts_dtc 1228 + $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ 1229 + 1230 + PHONY += dtbs dtbs_install 1231 + dtbs: prepare3 scripts_dtc 1232 + $(Q)$(MAKE) $(build)=$(dtstree) 1233 + 1234 + dtbs_install: 1235 + $(Q)$(MAKE) $(dtbinst)=$(dtstree) 1236 + 1237 + ifdef CONFIG_OF_EARLY_FLATTREE 1238 + all: dtbs 1239 + endif 1240 + 1241 + endif 1242 + 1243 + PHONY += scripts_dtc 1244 + scripts_dtc: scripts_basic 1245 + $(Q)$(MAKE) $(build)=scripts/dtc 1217 1246 1218 1247 # --------------------------------------------------------------------------- 1219 1248 # Modules ··· 1453 1424 @echo ' kselftest-merge - Merge all the config dependencies of kselftest to existing' 1454 1425 @echo ' .config.' 1455 1426 @echo '' 1427 + @$(if $(dtstree), \ 1428 + echo 'Devicetree:'; \ 1429 + echo '* dtbs - Build device tree blobs for enabled boards'; \ 1430 + echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)'; \ 1431 + echo '') 1432 + 1456 1433 @echo 'Userspace tools targets:' 1457 1434 @echo ' use "make tools/help"' 1458 1435 @echo ' or "cd tools; make help"'
-6
arch/arc/Makefile
··· 132 132 $(boot_targets): vmlinux 133 133 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ 134 134 135 - %.dtb %.dtb.S %.dtb.o: scripts 136 - $(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@ 137 - 138 - dtbs: scripts 139 - $(Q)$(MAKE) $(build)=$(boot)/dts 140 - 141 135 archclean: 142 136 $(Q)$(MAKE) $(clean)=$(boot)
+1 -19
arch/arm/Makefile
··· 307 307 KBUILD_IMAGE := $(boot)/zImage 308 308 endif 309 309 310 - # Build the DT binary blobs if we have OF configured 311 - ifeq ($(CONFIG_USE_OF),y) 312 - KBUILD_DTBS := dtbs 313 - endif 314 - 315 - all: $(notdir $(KBUILD_IMAGE)) $(KBUILD_DTBS) 310 + all: $(notdir $(KBUILD_IMAGE)) 316 311 317 312 318 313 archheaders: ··· 334 339 $(INSTALL_TARGETS): 335 340 $(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $@ 336 341 337 - %.dtb: | scripts 338 - $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@ 339 - 340 - PHONY += dtbs dtbs_install 341 - 342 - dtbs: prepare scripts 343 - $(Q)$(MAKE) $(build)=$(boot)/dts 344 - 345 - dtbs_install: 346 - $(Q)$(MAKE) $(dtbinst)=$(boot)/dts 347 - 348 342 PHONY += vdso_install 349 343 vdso_install: 350 344 ifeq ($(CONFIG_VDSO),y) ··· 355 371 echo ' uImage - U-Boot wrapped zImage' 356 372 echo ' bootpImage - Combined zImage and initial RAM disk' 357 373 echo ' (supply initrd image via make variable INITRD=<path>)' 358 - echo '* dtbs - Build device tree blobs for enabled boards' 359 - echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)' 360 374 echo ' install - Install uncompressed kernel' 361 375 echo ' zinstall - Install compressed kernel' 362 376 echo ' uinstall - Install U-Boot wrapped compressed kernel'
+1 -16
arch/arm64/Makefile
··· 113 113 # Default target when executing plain make 114 114 boot := arch/arm64/boot 115 115 KBUILD_IMAGE := $(boot)/Image.gz 116 - KBUILD_DTBS := dtbs 117 116 118 - all: Image.gz $(KBUILD_DTBS) 117 + all: Image.gz 119 118 120 119 121 120 Image: vmlinux ··· 126 127 zinstall install: 127 128 $(Q)$(MAKE) $(build)=$(boot) $@ 128 129 129 - %.dtb: scripts 130 - $(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@ 131 - 132 - PHONY += dtbs dtbs_install 133 - 134 - dtbs: prepare scripts 135 - $(Q)$(MAKE) $(build)=$(boot)/dts 136 - 137 - dtbs_install: 138 - $(Q)$(MAKE) $(dtbinst)=$(boot)/dts 139 - 140 130 PHONY += vdso_install 141 131 vdso_install: 142 132 $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso $@ ··· 133 145 # We use MRPROPER_FILES and CLEAN_FILES now 134 146 archclean: 135 147 $(Q)$(MAKE) $(clean)=$(boot) 136 - $(Q)$(MAKE) $(clean)=$(boot)/dts 137 148 138 149 # We need to generate vdso-offsets.h before compiling certain files in kernel/. 139 150 # In order to do that, we should use the archprepare target, but we can't since ··· 147 160 define archhelp 148 161 echo '* Image.gz - Compressed kernel image (arch/$(ARCH)/boot/Image.gz)' 149 162 echo ' Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)' 150 - echo '* dtbs - Build device tree blobs for enabled boards' 151 - echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)' 152 163 echo ' install - Install uncompressed kernel' 153 164 echo ' zinstall - Install compressed kernel' 154 165 echo ' Install using (your) ~/bin/installkernel or'
-2
arch/c6x/Makefile
··· 40 40 DTB:=$(subst dtbImage.,,$(filter dtbImage.%, $(MAKECMDGOALS))) 41 41 export DTB 42 42 43 - ifneq ($(DTB),) 44 43 core-y += $(boot)/dts/ 45 - endif 46 44 47 45 # With make 3.82 we cannot mix normal and wildcard targets 48 46
+7 -10
arch/c6x/boot/dts/Makefile
··· 5 5 6 6 DTC_FLAGS ?= -p 1024 7 7 8 + dtb-$(CONFIG_SOC_TMS320C6455) += dsk6455.dtb 9 + dtb-$(CONFIG_SOC_TMS320C6457) += evmc6457.dtb 10 + dtb-$(CONFIG_SOC_TMS320C6472) += evmc6472.dtb 11 + dtb-$(CONFIG_SOC_TMS320C6474) += evmc6474.dtb 12 + dtb-$(CONFIG_SOC_TMS320C6678) += evmc6678.dtb 13 + 8 14 ifneq ($(DTB),) 9 - obj-y += linked_dtb.o 15 + obj-y += $(DTB).dtb.o 10 16 endif 11 - 12 - quiet_cmd_cp = CP $< $@$2 13 - cmd_cp = cat $< >$@$2 || (rm -f $@ && echo false) 14 - 15 - # Generate builtin.dtb from $(DTB).dtb 16 - $(obj)/builtin.dtb: $(obj)/$(DTB).dtb 17 - $(call if_changed,cp) 18 - 19 - $(obj)/linked_dtb.o: $(obj)/builtin.dtb
-2
arch/c6x/boot/dts/linked_dtb.S
··· 1 - .section __fdt_blob,"a" 2 - .incbin "arch/c6x/boot/dts/builtin.dtb"
-1
arch/c6x/include/asm/sections.h
··· 8 8 extern char _vectors_end[]; 9 9 10 10 extern char _data_lma[]; 11 - extern char _fdt_start[], _fdt_end[]; 12 11 13 12 #endif /* _ASM_C6X_SECTIONS_H */
+2 -2
arch/c6x/kernel/setup.c
··· 265 265 notrace void __init machine_init(unsigned long dt_ptr) 266 266 { 267 267 void *dtb = __va(dt_ptr); 268 - void *fdt = _fdt_start; 268 + void *fdt = __dtb_start; 269 269 270 270 /* interrupts must be masked */ 271 271 set_creg(IER, 2); ··· 358 358 memory_end >> PAGE_SHIFT); 359 359 memblock_reserve(memory_start, bootmap_size); 360 360 361 - unflatten_device_tree(); 361 + unflatten_and_copy_device_tree(); 362 362 363 363 c6x_cache_init(); 364 364
-10
arch/c6x/kernel/vmlinux.lds.S
··· 90 90 *(.switch) 91 91 } 92 92 93 - . = ALIGN (8) ; 94 - __fdt_blob : AT(ADDR(__fdt_blob) - LOAD_OFFSET) 95 - { 96 - _fdt_start = . ; /* place for fdt blob */ 97 - *(__fdt_blob) ; /* Any link-placed DTB */ 98 - BYTE(0); /* section always has contents */ 99 - . = _fdt_start + 0x4000; /* Pad up to 16kbyte */ 100 - _fdt_end = . ; 101 - } 102 - 103 93 _etext = .; 104 94 105 95 /*
+1 -10
arch/h8300/Makefile
··· 31 31 endif 32 32 33 33 core-y += arch/$(ARCH)/kernel/ arch/$(ARCH)/mm/ 34 - ifneq '$(CONFIG_H8300_BUILTIN_DTB)' '""' 35 - core-y += arch/h8300/boot/dts/ 36 - endif 34 + core-y += arch/$(ARCH)/boot/dts/ 37 35 38 36 libs-y += arch/$(ARCH)/lib/ 39 37 40 38 boot := arch/h8300/boot 41 - 42 - %.dtb %.dtb.S %.dtb.o: | scripts 43 - $(Q)$(MAKE) $(build)=arch/h8300/boot/dts arch/h8300/boot/dts/$@ 44 - 45 - PHONY += dtbs 46 - dtbs: scripts 47 - $(Q)$(MAKE) $(build)=arch/h8300/boot/dts 48 39 49 40 archmrproper: 50 41
+1 -3
arch/microblaze/Makefile
··· 65 65 # Are we making a simpleImage.<boardname> target? If so, crack out the boardname 66 66 DTB:=$(subst simpleImage.,,$(filter simpleImage.%, $(MAKECMDGOALS))) 67 67 68 - ifneq ($(DTB),) 69 - core-y += $(boot)/dts/ 70 - endif 68 + core-y += $(boot)/dts/ 71 69 72 70 # defines filename extension depending memory management type 73 71 ifeq ($(CONFIG_MMU),)
+4
arch/microblaze/boot/dts/Makefile
··· 1 1 # SPDX-License-Identifier: GPL-2.0 2 2 # 3 3 4 + dtb-y := system.dtb 5 + 6 + ifneq ($(DTB),) 4 7 obj-y += linked_dtb.o 5 8 6 9 # Ensure system.dtb exists ··· 13 10 ifneq ($(DTB),system) 14 11 $(obj)/system.dtb: $(obj)/$(DTB).dtb 15 12 $(call if_changed,cp) 13 + endif 16 14 endif 17 15 18 16 quiet_cmd_cp = CP $< $@$2
+1 -14
arch/mips/Makefile
··· 407 407 CLEAN_FILES += vmlinux.32 vmlinux.64 408 408 409 409 # device-trees 410 - core-$(CONFIG_BUILTIN_DTB) += arch/mips/boot/dts/ 411 - 412 - %.dtb %.dtb.S %.dtb.o: | scripts 413 - $(Q)$(MAKE) $(build)=arch/mips/boot/dts arch/mips/boot/dts/$@ 414 - 415 - PHONY += dtbs 416 - dtbs: scripts 417 - $(Q)$(MAKE) $(build)=arch/mips/boot/dts 418 - 419 - PHONY += dtbs_install 420 - dtbs_install: 421 - $(Q)$(MAKE) $(dtbinst)=arch/mips/boot/dts 410 + core-y += arch/mips/boot/dts/ 422 411 423 412 archprepare: 424 413 ifdef CONFIG_MIPS32_N32 ··· 450 461 echo ' uImage.lzma - U-Boot image (lzma)' 451 462 echo ' uImage.lzo - U-Boot image (lzo)' 452 463 echo ' uzImage.bin - U-Boot image (self-extracting)' 453 - echo ' dtbs - Device-tree blobs for enabled boards' 454 - echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)' 455 464 echo 456 465 echo ' These will be default as appropriate for a configured platform.' 457 466 echo
+1 -1
arch/nds32/Makefile
··· 43 43 endif 44 44 45 45 boot := arch/nds32/boot 46 - core-$(BUILTIN_DTB) += $(boot)/dts/ 46 + core-y += $(boot)/dts/ 47 47 48 48 .PHONY: FORCE 49 49
+1 -10
arch/nios2/Makefile
··· 49 49 PHONY += $(BOOT_TARGETS) install 50 50 KBUILD_IMAGE := $(nios2-boot)/vmImage 51 51 52 - ifneq ($(CONFIG_NIOS2_DTB_SOURCE),"") 53 - core-y += $(nios2-boot)/ 54 - endif 52 + core-y += $(nios2-boot)/dts/ 55 53 56 54 all: vmImage 57 55 58 56 archclean: 59 57 $(Q)$(MAKE) $(clean)=$(nios2-boot) 60 - 61 - %.dtb: | scripts 62 - $(Q)$(MAKE) $(build)=$(nios2-boot) $(nios2-boot)/$@ 63 - 64 - dtbs: 65 - $(Q)$(MAKE) $(build)=$(nios2-boot) $(nios2-boot)/$@ 66 58 67 59 $(BOOT_TARGETS): vmlinux 68 60 $(Q)$(MAKE) $(build)=$(nios2-boot) $(nios2-boot)/$@ ··· 68 76 echo ' (your) ~/bin/$(INSTALLKERNEL) or' 69 77 echo ' (distribution) /sbin/$(INSTALLKERNEL) or' 70 78 echo ' install to $$(INSTALL_PATH)' 71 - echo ' dtbs - Build device tree blobs for enabled boards' 72 79 endef
-22
arch/nios2/boot/Makefile
··· 31 31 $(obj)/compressed/vmlinux: $(obj)/vmlinux.gz FORCE 32 32 $(Q)$(MAKE) $(build)=$(obj)/compressed $@ 33 33 34 - # Rule to build device tree blobs 35 - DTB_SRC := $(patsubst "%",%,$(CONFIG_NIOS2_DTB_SOURCE)) 36 - 37 - # Make sure the generated dtb gets removed during clean 38 - extra-$(CONFIG_NIOS2_DTB_SOURCE_BOOL) += system.dtb 39 - 40 - $(obj)/system.dtb: $(DTB_SRC) FORCE 41 - $(call cmd,dtc) 42 - 43 - # Ensure system.dtb exists 44 - $(obj)/linked_dtb.o: $(obj)/system.dtb 45 - 46 - obj-$(CONFIG_NIOS2_DTB_SOURCE_BOOL) += linked_dtb.o 47 - 48 - targets += $(dtb-y) 49 - 50 - # Rule to build device tree blobs with make command 51 - $(obj)/%.dtb: $(src)/dts/%.dts FORCE 52 - $(call if_changed_dep,dtc) 53 - 54 - $(obj)/dtbs: $(addprefix $(obj)/, $(dtb-y)) 55 - 56 34 install: 57 35 sh $(srctree)/$(src)/install.sh $(KERNELRELEASE) $(BOOTIMAGE) System.map "$(INSTALL_PATH)"
+6
arch/nios2/boot/dts/Makefile
··· 1 + # SPDX-License-Identifier: GPL-2.0 2 + 3 + obj-y := $(patsubst "%.dts",%.dtb.o,$(CONFIG_NIOS2_DTB_SOURCE)) 4 + 5 + dtstree := $(srctree)/$(src) 6 + dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-19
arch/nios2/boot/linked_dtb.S
··· 1 - /* 2 - * Copyright (C) 2011 Thomas Chou <thomas@wytron.com.tw> 3 - * 4 - * This program is free software; you can redistribute it and/or modify 5 - * it under the terms of the GNU General Public License as published by 6 - * the Free Software Foundation; either version 2 of the License, or 7 - * (at your option) any later version. 8 - * 9 - * This program is distributed in the hope that it will be useful, 10 - * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 - * GNU General Public License for more details. 13 - * 14 - * You should have received a copy of the GNU General Public License 15 - * along with this program. If not, see <http://www.gnu.org/licenses/>. 16 - * 17 - */ 18 - .section .dtb.init.rodata,"a" 19 - .incbin "arch/nios2/boot/system.dtb"
-3
arch/powerpc/Makefile
··· 293 293 bootwrapper_install: 294 294 $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@) 295 295 296 - %.dtb: scripts 297 - $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@) 298 - 299 296 # Used to create 'merged defconfigs' 300 297 # To use it $(call) it with the first argument as the base defconfig 301 298 # and the second argument as a space separated list of .config files to merge,
+26 -29
arch/powerpc/boot/Makefile
··· 304 304 dtbImage.adder875-redboot 305 305 306 306 # Board ports in arch/powerpc/platform/52xx/Kconfig 307 - image-$(CONFIG_PPC_LITE5200) += cuImage.lite5200 lite5200.dtb 308 - image-$(CONFIG_PPC_LITE5200) += cuImage.lite5200b lite5200b.dtb 309 - image-$(CONFIG_PPC_MEDIA5200) += cuImage.media5200 media5200.dtb 307 + image-$(CONFIG_PPC_LITE5200) += cuImage.lite5200 308 + image-$(CONFIG_PPC_LITE5200) += cuImage.lite5200b 309 + image-$(CONFIG_PPC_MEDIA5200) += cuImage.media5200 310 310 311 311 # Board ports in arch/powerpc/platform/82xx/Kconfig 312 312 image-$(CONFIG_MPC8272_ADS) += cuImage.mpc8272ads ··· 381 381 $(call if_changed,wrap,$(subst $(obj)/zImage.,,$@)) 382 382 383 383 # dtbImage% - a dtbImage is a zImage with an embedded device tree blob 384 - $(obj)/dtbImage.initrd.%: vmlinux $(wrapperbits) $(obj)/%.dtb FORCE 385 - $(call if_changed,wrap,$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz) 384 + $(obj)/dtbImage.initrd.%: vmlinux $(wrapperbits) $(obj)/dts/%.dtb FORCE 385 + $(call if_changed,wrap,$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz) 386 386 387 - $(obj)/dtbImage.%: vmlinux $(wrapperbits) $(obj)/%.dtb FORCE 388 - $(call if_changed,wrap,$*,,$(obj)/$*.dtb) 387 + $(obj)/dtbImage.%: vmlinux $(wrapperbits) $(obj)/dts/%.dtb FORCE 388 + $(call if_changed,wrap,$*,,$(obj)/dts/$*.dtb) 389 389 390 390 # This cannot be in the root of $(src) as the zImage rule always adds a $(obj) 391 391 # prefix ··· 395 395 $(obj)/uImage: vmlinux $(wrapperbits) FORCE 396 396 $(call if_changed,wrap,uboot) 397 397 398 - $(obj)/uImage.initrd.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE 399 - $(call if_changed,wrap,uboot-$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz) 398 + $(obj)/uImage.initrd.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE 399 + $(call if_changed,wrap,uboot-$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz) 400 400 401 - $(obj)/uImage.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE 402 - $(call if_changed,wrap,uboot-$*,,$(obj)/$*.dtb) 401 + $(obj)/uImage.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE 402 + $(call if_changed,wrap,uboot-$*,,$(obj)/dts/$*.dtb) 403 403 404 - $(obj)/cuImage.initrd.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE 405 - $(call if_changed,wrap,cuboot-$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz) 404 + $(obj)/cuImage.initrd.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE 405 + $(call if_changed,wrap,cuboot-$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz) 406 406 407 - $(obj)/cuImage.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE 408 - $(call if_changed,wrap,cuboot-$*,,$(obj)/$*.dtb) 407 + $(obj)/cuImage.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE 408 + $(call if_changed,wrap,cuboot-$*,,$(obj)/dts/$*.dtb) 409 409 410 - $(obj)/simpleImage.initrd.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE 411 - $(call if_changed,wrap,simpleboot-$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz) 410 + $(obj)/simpleImage.initrd.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE 411 + $(call if_changed,wrap,simpleboot-$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz) 412 412 413 - $(obj)/simpleImage.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE 414 - $(call if_changed,wrap,simpleboot-$*,,$(obj)/$*.dtb) 413 + $(obj)/simpleImage.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE 414 + $(call if_changed,wrap,simpleboot-$*,,$(obj)/dts/$*.dtb) 415 415 416 - $(obj)/treeImage.initrd.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE 417 - $(call if_changed,wrap,treeboot-$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz) 416 + $(obj)/treeImage.initrd.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE 417 + $(call if_changed,wrap,treeboot-$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz) 418 418 419 - $(obj)/treeImage.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE 420 - $(call if_changed,wrap,treeboot-$*,,$(obj)/$*.dtb) 419 + $(obj)/treeImage.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE 420 + $(call if_changed,wrap,treeboot-$*,,$(obj)/dts/$*.dtb) 421 421 422 - # Rule to build device tree blobs 423 - $(obj)/%.dtb: $(src)/dts/%.dts FORCE 424 - $(call if_changed_dep,dtc) 425 - 426 - $(obj)/%.dtb: $(src)/dts/fsl/%.dts FORCE 427 - $(call if_changed_dep,dtc) 422 + # Needed for the above targets to work with dts/fsl/ files 423 + $(obj)/dts/%.dtb: $(obj)/dts/fsl/%.dtb 424 + @cp $< $@ 428 425 429 426 # If there isn't a platform selected then just strip the vmlinux. 430 427 ifeq (,$(image-y))
+6
arch/powerpc/boot/dts/Makefile
··· 1 + # SPDX-License-Identifier: GPL-2.0 2 + 3 + subdir-y += fsl 4 + 5 + dtstree := $(srctree)/$(src) 6 + dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
+4
arch/powerpc/boot/dts/fsl/Makefile
··· 1 + # SPDX-License-Identifier: GPL-2.0 2 + 3 + dtstree := $(srctree)/$(src) 4 + dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
+1 -11
arch/xtensa/Makefile
··· 84 84 head-y := arch/xtensa/kernel/head.o 85 85 core-y += arch/xtensa/kernel/ arch/xtensa/mm/ 86 86 core-y += $(buildvar) $(buildplf) 87 + core-y += arch/xtensa/boot/dts/ 87 88 88 89 libs-y += arch/xtensa/lib/ $(LIBGCC) 89 90 drivers-$(CONFIG_OPROFILE) += arch/xtensa/oprofile/ 90 - 91 - ifneq ($(CONFIG_BUILTIN_DTB),"") 92 - core-$(CONFIG_OF) += arch/xtensa/boot/dts/ 93 - endif 94 91 95 92 boot := arch/xtensa/boot 96 93 97 94 all Image zImage uImage: vmlinux 98 95 $(Q)$(MAKE) $(build)=$(boot) $@ 99 96 100 - %.dtb: 101 - $(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@ 102 - 103 - dtbs: scripts 104 - $(Q)$(MAKE) $(build)=$(boot)/dts 105 - 106 97 define archhelp 107 98 @echo '* Image - Kernel ELF image with reset vector' 108 99 @echo '* zImage - Compressed kernel image (arch/xtensa/boot/images/zImage.*)' 109 100 @echo '* uImage - U-Boot wrapped image' 110 - @echo ' dtbs - Build device tree blobs for enabled boards' 111 101 endef
+1 -2
scripts/Makefile
··· 39 39 subdir-$(CONFIG_MODVERSIONS) += genksyms 40 40 subdir-y += mod 41 41 subdir-$(CONFIG_SECURITY_SELINUX) += selinux 42 - subdir-$(CONFIG_DTC) += dtc 43 42 subdir-$(CONFIG_GDB_SCRIPTS) += gdb 44 43 45 44 # Let clean descend into subdirs 46 - subdir- += basic kconfig package gcc-plugins 45 + subdir- += basic dtc kconfig package gcc-plugins
+1 -1
scripts/Makefile.lib
··· 283 283 284 284 quiet_cmd_dtc = DTC $@ 285 285 cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \ 286 - $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \ 286 + $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \ 287 287 $(DTC) -O dtb -o $@ -b 0 \ 288 288 $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \ 289 289 -d $(depfile).dtc.tmp $(dtc-tmp) ; \
+1 -1
scripts/dtc/Makefile
··· 1 1 # SPDX-License-Identifier: GPL-2.0 2 2 # scripts/dtc makefile 3 3 4 - hostprogs-y := dtc 4 + hostprogs-$(CONFIG_DTC) := dtc 5 5 always := $(hostprogs-y) 6 6 7 7 dtc-objs := dtc.o flattree.o fstree.o data.o livetree.o treesource.o \