mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-14 15:54:15 +08:00
kbuild: consolidate Devicetree dtb build rules
There is nothing arch specific about building dtb files other than their location under /arch/*/boot/dts/. Keeping each arch aligned is a pain. The dependencies and supported targets are all slightly different. Also, a cross-compiler for each arch is needed, but really the host compiler preprocessor is perfectly fine for building dtbs. Move the build rules to a common location and remove the arch specific ones. This is done in a single step to avoid warnings about overriding rules. The build dependencies had been a mixture of 'scripts' and/or 'prepare'. These pull in several dependencies some of which need a target compiler (specifically devicetable-offsets.h) and aren't needed to build dtbs. All that is really needed is dtc, so adjust the dependencies to only be dtc. This change enables support 'dtbs_install' on some arches which were missing the target. Acked-by: Will Deacon <will.deacon@arm.com> Acked-by: Paul Burton <paul.burton@mips.com> Acked-by: Ley Foon Tan <ley.foon.tan@intel.com> Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com> Cc: Michal Marek <michal.lkml@markovi.net> Cc: Vineet Gupta <vgupta@synopsys.com> Cc: Russell King <linux@armlinux.org.uk> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Yoshinori Sato <ysato@users.sourceforge.jp> Cc: Michal Simek <monstr@monstr.eu> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: James Hogan <jhogan@kernel.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Chris Zankel <chris@zankel.net> Cc: Max Filippov <jcmvbkbc@gmail.com> Cc: linux-kbuild@vger.kernel.org Cc: linux-snps-arc@lists.infradead.org Cc: linux-arm-kernel@lists.infradead.org Cc: uclinux-h8-devel@lists.sourceforge.jp Cc: linux-mips@linux-mips.org Cc: nios2-dev@lists.rocketboards.org Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-xtensa@linux-xtensa.org Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
be7cd2df1d
commit
37c8a5fafa
37
Makefile
37
Makefile
@ -1071,7 +1071,7 @@ include/config/kernel.release: $(srctree)/Makefile FORCE
|
|||||||
# Carefully list dependencies so we do not try to build scripts twice
|
# Carefully list dependencies so we do not try to build scripts twice
|
||||||
# in parallel
|
# in parallel
|
||||||
PHONY += scripts
|
PHONY += scripts
|
||||||
scripts: scripts_basic asm-generic gcc-plugins $(autoksyms_h)
|
scripts: scripts_basic scripts_dtc asm-generic gcc-plugins $(autoksyms_h)
|
||||||
$(Q)$(MAKE) $(build)=$(@)
|
$(Q)$(MAKE) $(build)=$(@)
|
||||||
|
|
||||||
# Things we need to do before we recursively start building the kernel
|
# Things we need to do before we recursively start building the kernel
|
||||||
@ -1215,6 +1215,35 @@ kselftest-merge:
|
|||||||
$(srctree)/tools/testing/selftests/*/config
|
$(srctree)/tools/testing/selftests/*/config
|
||||||
+$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
|
+$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
|
||||||
|
|
||||||
|
# ---------------------------------------------------------------------------
|
||||||
|
# Devicetree files
|
||||||
|
|
||||||
|
ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/boot/dts/),)
|
||||||
|
dtstree := arch/$(SRCARCH)/boot/dts
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(dtstree),)
|
||||||
|
|
||||||
|
%.dtb: prepare3 scripts_dtc
|
||||||
|
$(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@
|
||||||
|
|
||||||
|
PHONY += dtbs dtbs_install
|
||||||
|
dtbs: prepare3 scripts_dtc
|
||||||
|
$(Q)$(MAKE) $(build)=$(dtstree)
|
||||||
|
|
||||||
|
dtbs_install:
|
||||||
|
$(Q)$(MAKE) $(dtbinst)=$(dtstree)
|
||||||
|
|
||||||
|
ifdef CONFIG_OF_EARLY_FLATTREE
|
||||||
|
all: dtbs
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
PHONY += scripts_dtc
|
||||||
|
scripts_dtc: scripts_basic
|
||||||
|
$(Q)$(MAKE) $(build)=scripts/dtc
|
||||||
|
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
# Modules
|
# Modules
|
||||||
|
|
||||||
@ -1424,6 +1453,12 @@ help:
|
|||||||
@echo ' kselftest-merge - Merge all the config dependencies of kselftest to existing'
|
@echo ' kselftest-merge - Merge all the config dependencies of kselftest to existing'
|
||||||
@echo ' .config.'
|
@echo ' .config.'
|
||||||
@echo ''
|
@echo ''
|
||||||
|
@$(if $(dtstree), \
|
||||||
|
echo 'Devicetree:'; \
|
||||||
|
echo '* dtbs - Build device tree blobs for enabled boards'; \
|
||||||
|
echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)'; \
|
||||||
|
echo '')
|
||||||
|
|
||||||
@echo 'Userspace tools targets:'
|
@echo 'Userspace tools targets:'
|
||||||
@echo ' use "make tools/help"'
|
@echo ' use "make tools/help"'
|
||||||
@echo ' or "cd tools; make help"'
|
@echo ' or "cd tools; make help"'
|
||||||
|
@ -132,11 +132,5 @@ boot_targets += uImage uImage.bin uImage.gz
|
|||||||
$(boot_targets): vmlinux
|
$(boot_targets): vmlinux
|
||||||
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
|
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
|
||||||
|
|
||||||
%.dtb %.dtb.S %.dtb.o: scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@
|
|
||||||
|
|
||||||
dtbs: scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts
|
|
||||||
|
|
||||||
archclean:
|
archclean:
|
||||||
$(Q)$(MAKE) $(clean)=$(boot)
|
$(Q)$(MAKE) $(clean)=$(boot)
|
||||||
|
@ -307,12 +307,7 @@ else
|
|||||||
KBUILD_IMAGE := $(boot)/zImage
|
KBUILD_IMAGE := $(boot)/zImage
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Build the DT binary blobs if we have OF configured
|
all: $(notdir $(KBUILD_IMAGE))
|
||||||
ifeq ($(CONFIG_USE_OF),y)
|
|
||||||
KBUILD_DTBS := dtbs
|
|
||||||
endif
|
|
||||||
|
|
||||||
all: $(notdir $(KBUILD_IMAGE)) $(KBUILD_DTBS)
|
|
||||||
|
|
||||||
|
|
||||||
archheaders:
|
archheaders:
|
||||||
@ -339,17 +334,6 @@ $(BOOT_TARGETS): vmlinux
|
|||||||
$(INSTALL_TARGETS):
|
$(INSTALL_TARGETS):
|
||||||
$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $@
|
$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $@
|
||||||
|
|
||||||
%.dtb: | scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@
|
|
||||||
|
|
||||||
PHONY += dtbs dtbs_install
|
|
||||||
|
|
||||||
dtbs: prepare scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts
|
|
||||||
|
|
||||||
dtbs_install:
|
|
||||||
$(Q)$(MAKE) $(dtbinst)=$(boot)/dts
|
|
||||||
|
|
||||||
PHONY += vdso_install
|
PHONY += vdso_install
|
||||||
vdso_install:
|
vdso_install:
|
||||||
ifeq ($(CONFIG_VDSO),y)
|
ifeq ($(CONFIG_VDSO),y)
|
||||||
@ -371,8 +355,6 @@ define archhelp
|
|||||||
echo ' uImage - U-Boot wrapped zImage'
|
echo ' uImage - U-Boot wrapped zImage'
|
||||||
echo ' bootpImage - Combined zImage and initial RAM disk'
|
echo ' bootpImage - Combined zImage and initial RAM disk'
|
||||||
echo ' (supply initrd image via make variable INITRD=<path>)'
|
echo ' (supply initrd image via make variable INITRD=<path>)'
|
||||||
echo '* dtbs - Build device tree blobs for enabled boards'
|
|
||||||
echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)'
|
|
||||||
echo ' install - Install uncompressed kernel'
|
echo ' install - Install uncompressed kernel'
|
||||||
echo ' zinstall - Install compressed kernel'
|
echo ' zinstall - Install compressed kernel'
|
||||||
echo ' uinstall - Install U-Boot wrapped compressed kernel'
|
echo ' uinstall - Install U-Boot wrapped compressed kernel'
|
||||||
|
@ -113,9 +113,8 @@ core-$(CONFIG_EFI_STUB) += $(objtree)/drivers/firmware/efi/libstub/lib.a
|
|||||||
# Default target when executing plain make
|
# Default target when executing plain make
|
||||||
boot := arch/arm64/boot
|
boot := arch/arm64/boot
|
||||||
KBUILD_IMAGE := $(boot)/Image.gz
|
KBUILD_IMAGE := $(boot)/Image.gz
|
||||||
KBUILD_DTBS := dtbs
|
|
||||||
|
|
||||||
all: Image.gz $(KBUILD_DTBS)
|
all: Image.gz
|
||||||
|
|
||||||
|
|
||||||
Image: vmlinux
|
Image: vmlinux
|
||||||
@ -127,17 +126,6 @@ Image.%: Image
|
|||||||
zinstall install:
|
zinstall install:
|
||||||
$(Q)$(MAKE) $(build)=$(boot) $@
|
$(Q)$(MAKE) $(build)=$(boot) $@
|
||||||
|
|
||||||
%.dtb: scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@
|
|
||||||
|
|
||||||
PHONY += dtbs dtbs_install
|
|
||||||
|
|
||||||
dtbs: prepare scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts
|
|
||||||
|
|
||||||
dtbs_install:
|
|
||||||
$(Q)$(MAKE) $(dtbinst)=$(boot)/dts
|
|
||||||
|
|
||||||
PHONY += vdso_install
|
PHONY += vdso_install
|
||||||
vdso_install:
|
vdso_install:
|
||||||
$(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso $@
|
$(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso $@
|
||||||
@ -145,7 +133,6 @@ vdso_install:
|
|||||||
# We use MRPROPER_FILES and CLEAN_FILES now
|
# We use MRPROPER_FILES and CLEAN_FILES now
|
||||||
archclean:
|
archclean:
|
||||||
$(Q)$(MAKE) $(clean)=$(boot)
|
$(Q)$(MAKE) $(clean)=$(boot)
|
||||||
$(Q)$(MAKE) $(clean)=$(boot)/dts
|
|
||||||
|
|
||||||
# We need to generate vdso-offsets.h before compiling certain files in kernel/.
|
# We need to generate vdso-offsets.h before compiling certain files in kernel/.
|
||||||
# In order to do that, we should use the archprepare target, but we can't since
|
# In order to do that, we should use the archprepare target, but we can't since
|
||||||
@ -160,8 +147,6 @@ vdso_prepare: prepare0
|
|||||||
define archhelp
|
define archhelp
|
||||||
echo '* Image.gz - Compressed kernel image (arch/$(ARCH)/boot/Image.gz)'
|
echo '* Image.gz - Compressed kernel image (arch/$(ARCH)/boot/Image.gz)'
|
||||||
echo ' Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'
|
echo ' Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'
|
||||||
echo '* dtbs - Build device tree blobs for enabled boards'
|
|
||||||
echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)'
|
|
||||||
echo ' install - Install uncompressed kernel'
|
echo ' install - Install uncompressed kernel'
|
||||||
echo ' zinstall - Install compressed kernel'
|
echo ' zinstall - Install compressed kernel'
|
||||||
echo ' Install using (your) ~/bin/installkernel or'
|
echo ' Install using (your) ~/bin/installkernel or'
|
||||||
|
@ -40,9 +40,7 @@ boot := arch/$(ARCH)/boot
|
|||||||
DTB:=$(subst dtbImage.,,$(filter dtbImage.%, $(MAKECMDGOALS)))
|
DTB:=$(subst dtbImage.,,$(filter dtbImage.%, $(MAKECMDGOALS)))
|
||||||
export DTB
|
export DTB
|
||||||
|
|
||||||
ifneq ($(DTB),)
|
|
||||||
core-y += $(boot)/dts/
|
core-y += $(boot)/dts/
|
||||||
endif
|
|
||||||
|
|
||||||
# With make 3.82 we cannot mix normal and wildcard targets
|
# With make 3.82 we cannot mix normal and wildcard targets
|
||||||
|
|
||||||
|
@ -31,21 +31,12 @@ CROSS_COMPILE := h8300-unknown-linux-
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
core-y += arch/$(ARCH)/kernel/ arch/$(ARCH)/mm/
|
core-y += arch/$(ARCH)/kernel/ arch/$(ARCH)/mm/
|
||||||
ifneq '$(CONFIG_H8300_BUILTIN_DTB)' '""'
|
core-y += arch/$(ARCH)/boot/dts/
|
||||||
core-y += arch/h8300/boot/dts/
|
|
||||||
endif
|
|
||||||
|
|
||||||
libs-y += arch/$(ARCH)/lib/
|
libs-y += arch/$(ARCH)/lib/
|
||||||
|
|
||||||
boot := arch/h8300/boot
|
boot := arch/h8300/boot
|
||||||
|
|
||||||
%.dtb %.dtb.S %.dtb.o: | scripts
|
|
||||||
$(Q)$(MAKE) $(build)=arch/h8300/boot/dts arch/h8300/boot/dts/$@
|
|
||||||
|
|
||||||
PHONY += dtbs
|
|
||||||
dtbs: scripts
|
|
||||||
$(Q)$(MAKE) $(build)=arch/h8300/boot/dts
|
|
||||||
|
|
||||||
archmrproper:
|
archmrproper:
|
||||||
|
|
||||||
archclean:
|
archclean:
|
||||||
|
@ -65,9 +65,7 @@ boot := arch/microblaze/boot
|
|||||||
# Are we making a simpleImage.<boardname> target? If so, crack out the boardname
|
# Are we making a simpleImage.<boardname> target? If so, crack out the boardname
|
||||||
DTB:=$(subst simpleImage.,,$(filter simpleImage.%, $(MAKECMDGOALS)))
|
DTB:=$(subst simpleImage.,,$(filter simpleImage.%, $(MAKECMDGOALS)))
|
||||||
|
|
||||||
ifneq ($(DTB),)
|
core-y += $(boot)/dts/
|
||||||
core-y += $(boot)/dts/
|
|
||||||
endif
|
|
||||||
|
|
||||||
# defines filename extension depending memory management type
|
# defines filename extension depending memory management type
|
||||||
ifeq ($(CONFIG_MMU),)
|
ifeq ($(CONFIG_MMU),)
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
#
|
#
|
||||||
|
|
||||||
|
ifneq ($(DTB),)
|
||||||
obj-y += linked_dtb.o
|
obj-y += linked_dtb.o
|
||||||
|
|
||||||
# Ensure system.dtb exists
|
# Ensure system.dtb exists
|
||||||
@ -11,6 +12,7 @@ ifneq ($(DTB),system)
|
|||||||
$(obj)/system.dtb: $(obj)/$(DTB).dtb
|
$(obj)/system.dtb: $(obj)/$(DTB).dtb
|
||||||
$(call if_changed,cp)
|
$(call if_changed,cp)
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
quiet_cmd_cp = CP $< $@$2
|
quiet_cmd_cp = CP $< $@$2
|
||||||
cmd_cp = cat $< >$@$2 || (rm -f $@ && echo false)
|
cmd_cp = cat $< >$@$2 || (rm -f $@ && echo false)
|
||||||
|
@ -407,18 +407,7 @@ endif
|
|||||||
CLEAN_FILES += vmlinux.32 vmlinux.64
|
CLEAN_FILES += vmlinux.32 vmlinux.64
|
||||||
|
|
||||||
# device-trees
|
# device-trees
|
||||||
core-$(CONFIG_BUILTIN_DTB) += arch/mips/boot/dts/
|
core-y += arch/mips/boot/dts/
|
||||||
|
|
||||||
%.dtb %.dtb.S %.dtb.o: | scripts
|
|
||||||
$(Q)$(MAKE) $(build)=arch/mips/boot/dts arch/mips/boot/dts/$@
|
|
||||||
|
|
||||||
PHONY += dtbs
|
|
||||||
dtbs: scripts
|
|
||||||
$(Q)$(MAKE) $(build)=arch/mips/boot/dts
|
|
||||||
|
|
||||||
PHONY += dtbs_install
|
|
||||||
dtbs_install:
|
|
||||||
$(Q)$(MAKE) $(dtbinst)=arch/mips/boot/dts
|
|
||||||
|
|
||||||
archprepare:
|
archprepare:
|
||||||
ifdef CONFIG_MIPS32_N32
|
ifdef CONFIG_MIPS32_N32
|
||||||
@ -461,8 +450,6 @@ define archhelp
|
|||||||
echo ' uImage.lzma - U-Boot image (lzma)'
|
echo ' uImage.lzma - U-Boot image (lzma)'
|
||||||
echo ' uImage.lzo - U-Boot image (lzo)'
|
echo ' uImage.lzo - U-Boot image (lzo)'
|
||||||
echo ' uzImage.bin - U-Boot image (self-extracting)'
|
echo ' uzImage.bin - U-Boot image (self-extracting)'
|
||||||
echo ' dtbs - Device-tree blobs for enabled boards'
|
|
||||||
echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)'
|
|
||||||
echo
|
echo
|
||||||
echo ' These will be default as appropriate for a configured platform.'
|
echo ' These will be default as appropriate for a configured platform.'
|
||||||
echo
|
echo
|
||||||
|
@ -43,7 +43,7 @@ CHECKFLAGS += -D__NDS32_EB__
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
boot := arch/nds32/boot
|
boot := arch/nds32/boot
|
||||||
core-$(BUILTIN_DTB) += $(boot)/dts/
|
core-y += $(boot)/dts/
|
||||||
|
|
||||||
.PHONY: FORCE
|
.PHONY: FORCE
|
||||||
|
|
||||||
|
@ -56,12 +56,6 @@ all: vmImage
|
|||||||
archclean:
|
archclean:
|
||||||
$(Q)$(MAKE) $(clean)=$(nios2-boot)
|
$(Q)$(MAKE) $(clean)=$(nios2-boot)
|
||||||
|
|
||||||
%.dtb %.dtb.S %.dtb.o: | scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(nios2-boot)/dts $(nios2-boot)/dts/$@
|
|
||||||
|
|
||||||
dtbs:
|
|
||||||
$(Q)$(MAKE) $(build)=$(nios2-boot)/dts
|
|
||||||
|
|
||||||
$(BOOT_TARGETS): vmlinux
|
$(BOOT_TARGETS): vmlinux
|
||||||
$(Q)$(MAKE) $(build)=$(nios2-boot) $(nios2-boot)/$@
|
$(Q)$(MAKE) $(build)=$(nios2-boot) $(nios2-boot)/$@
|
||||||
|
|
||||||
@ -74,5 +68,4 @@ define archhelp
|
|||||||
echo ' (your) ~/bin/$(INSTALLKERNEL) or'
|
echo ' (your) ~/bin/$(INSTALLKERNEL) or'
|
||||||
echo ' (distribution) /sbin/$(INSTALLKERNEL) or'
|
echo ' (distribution) /sbin/$(INSTALLKERNEL) or'
|
||||||
echo ' install to $$(INSTALL_PATH)'
|
echo ' install to $$(INSTALL_PATH)'
|
||||||
echo ' dtbs - Build device tree blobs for enabled boards'
|
|
||||||
endef
|
endef
|
||||||
|
@ -31,9 +31,5 @@ $(obj)/zImage: $(obj)/compressed/vmlinux FORCE
|
|||||||
$(obj)/compressed/vmlinux: $(obj)/vmlinux.gz FORCE
|
$(obj)/compressed/vmlinux: $(obj)/vmlinux.gz FORCE
|
||||||
$(Q)$(MAKE) $(build)=$(obj)/compressed $@
|
$(Q)$(MAKE) $(build)=$(obj)/compressed $@
|
||||||
|
|
||||||
targets += $(dtb-y)
|
|
||||||
|
|
||||||
$(obj)/dtbs: $(addprefix $(obj)/, $(dtb-y))
|
|
||||||
|
|
||||||
install:
|
install:
|
||||||
sh $(srctree)/$(src)/install.sh $(KERNELRELEASE) $(BOOTIMAGE) System.map "$(INSTALL_PATH)"
|
sh $(srctree)/$(src)/install.sh $(KERNELRELEASE) $(BOOTIMAGE) System.map "$(INSTALL_PATH)"
|
||||||
|
@ -293,9 +293,6 @@ $(BOOT_TARGETS2): vmlinux
|
|||||||
bootwrapper_install:
|
bootwrapper_install:
|
||||||
$(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
|
$(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
|
||||||
|
|
||||||
%.dtb: scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts $(patsubst %,$(boot)/dts/%,$@)
|
|
||||||
|
|
||||||
# Used to create 'merged defconfigs'
|
# Used to create 'merged defconfigs'
|
||||||
# To use it $(call) it with the first argument as the base defconfig
|
# To use it $(call) it with the first argument as the base defconfig
|
||||||
# and the second argument as a space separated list of .config files to merge,
|
# and the second argument as a space separated list of .config files to merge,
|
||||||
|
@ -84,28 +84,18 @@ LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
|
|||||||
head-y := arch/xtensa/kernel/head.o
|
head-y := arch/xtensa/kernel/head.o
|
||||||
core-y += arch/xtensa/kernel/ arch/xtensa/mm/
|
core-y += arch/xtensa/kernel/ arch/xtensa/mm/
|
||||||
core-y += $(buildvar) $(buildplf)
|
core-y += $(buildvar) $(buildplf)
|
||||||
|
core-y += arch/xtensa/boot/dts/
|
||||||
|
|
||||||
libs-y += arch/xtensa/lib/ $(LIBGCC)
|
libs-y += arch/xtensa/lib/ $(LIBGCC)
|
||||||
drivers-$(CONFIG_OPROFILE) += arch/xtensa/oprofile/
|
drivers-$(CONFIG_OPROFILE) += arch/xtensa/oprofile/
|
||||||
|
|
||||||
ifneq ($(CONFIG_BUILTIN_DTB),"")
|
|
||||||
core-$(CONFIG_OF) += arch/xtensa/boot/dts/
|
|
||||||
endif
|
|
||||||
|
|
||||||
boot := arch/xtensa/boot
|
boot := arch/xtensa/boot
|
||||||
|
|
||||||
all Image zImage uImage: vmlinux
|
all Image zImage uImage: vmlinux
|
||||||
$(Q)$(MAKE) $(build)=$(boot) $@
|
$(Q)$(MAKE) $(build)=$(boot) $@
|
||||||
|
|
||||||
%.dtb:
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@
|
|
||||||
|
|
||||||
dtbs: scripts
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot)/dts
|
|
||||||
|
|
||||||
define archhelp
|
define archhelp
|
||||||
@echo '* Image - Kernel ELF image with reset vector'
|
@echo '* Image - Kernel ELF image with reset vector'
|
||||||
@echo '* zImage - Compressed kernel image (arch/xtensa/boot/images/zImage.*)'
|
@echo '* zImage - Compressed kernel image (arch/xtensa/boot/images/zImage.*)'
|
||||||
@echo '* uImage - U-Boot wrapped image'
|
@echo '* uImage - U-Boot wrapped image'
|
||||||
@echo ' dtbs - Build device tree blobs for enabled boards'
|
|
||||||
endef
|
endef
|
||||||
|
@ -39,8 +39,7 @@ build_unifdef: $(obj)/unifdef
|
|||||||
subdir-$(CONFIG_MODVERSIONS) += genksyms
|
subdir-$(CONFIG_MODVERSIONS) += genksyms
|
||||||
subdir-y += mod
|
subdir-y += mod
|
||||||
subdir-$(CONFIG_SECURITY_SELINUX) += selinux
|
subdir-$(CONFIG_SECURITY_SELINUX) += selinux
|
||||||
subdir-$(CONFIG_DTC) += dtc
|
|
||||||
subdir-$(CONFIG_GDB_SCRIPTS) += gdb
|
subdir-$(CONFIG_GDB_SCRIPTS) += gdb
|
||||||
|
|
||||||
# Let clean descend into subdirs
|
# Let clean descend into subdirs
|
||||||
subdir- += basic kconfig package gcc-plugins
|
subdir- += basic dtc kconfig package gcc-plugins
|
||||||
|
@ -283,7 +283,7 @@ $(obj)/%.dtb.S: $(obj)/%.dtb FORCE
|
|||||||
|
|
||||||
quiet_cmd_dtc = DTC $@
|
quiet_cmd_dtc = DTC $@
|
||||||
cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
|
cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
|
||||||
$(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
|
$(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
|
||||||
$(DTC) -O dtb -o $@ -b 0 \
|
$(DTC) -O dtb -o $@ -b 0 \
|
||||||
$(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \
|
$(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \
|
||||||
-d $(depfile).dtc.tmp $(dtc-tmp) ; \
|
-d $(depfile).dtc.tmp $(dtc-tmp) ; \
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
# scripts/dtc makefile
|
# scripts/dtc makefile
|
||||||
|
|
||||||
hostprogs-y := dtc
|
hostprogs-$(CONFIG_DTC) := dtc
|
||||||
always := $(hostprogs-y)
|
always := $(hostprogs-y)
|
||||||
|
|
||||||
dtc-objs := dtc.o flattree.o fstree.o data.o livetree.o treesource.o \
|
dtc-objs := dtc.o flattree.o fstree.o data.o livetree.o treesource.o \
|
||||||
|
Loading…
Reference in New Issue
Block a user