mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-04 14:56:48 +07:00
da844a8177
Device trees allow specification of hardware topology and device parameters at runtime instead of hard-coding them in platform setup code. This allows running single binary kernel on a range of compatible boards. New boot parameters tag BP_TAG_FDT is allocated and a pointer to flat device tree is passed in it. Note that current interrupt mapping scheme uses single cell for interrupt identification. That means that IRQ numbers used in DTS must be CPU internal IRQ numbers, not external. It is possible to extend interrupt identification to two cells, and use second cell to tell external IRQ numbers form internal. That would allow to use single DTS on multiple boards with different mapping of external IRQ numbers. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Chris Zankel <chris@zankel.net>
56 lines
1.3 KiB
Makefile
56 lines
1.3 KiB
Makefile
#
|
|
# arch/xtensa/boot/Makefile
|
|
#
|
|
# This file is subject to the terms and conditions of the GNU General Public
|
|
# License. See the file "COPYING" in the main directory of this archive
|
|
# for more details.
|
|
#
|
|
#
|
|
|
|
|
|
# KBUILD_CFLAGS used when building rest of boot (takes effect recursively)
|
|
KBUILD_CFLAGS += -fno-builtin -Iarch/$(ARCH)/boot/include
|
|
HOSTFLAGS += -Iarch/$(ARCH)/boot/include
|
|
|
|
BIG_ENDIAN := $(shell echo -e __XTENSA_EB__ | $(CC) -E - | grep -v "\#")
|
|
|
|
export ccflags-y
|
|
export BIG_ENDIAN
|
|
|
|
subdir-y := lib
|
|
|
|
# Subdirs for the boot loader(s)
|
|
|
|
bootdir-$(CONFIG_XTENSA_PLATFORM_ISS) += boot-elf
|
|
bootdir-$(CONFIG_XTENSA_PLATFORM_XT2000) += boot-redboot boot-elf boot-uboot
|
|
|
|
|
|
BUILTIN_DTB := $(patsubst "%",%,$(CONFIG_BUILTIN_DTB)).dtb.o
|
|
ifneq ($(CONFIG_BUILTIN_DTB),"")
|
|
obj-y += $(BUILTIN_DTB)
|
|
endif
|
|
|
|
# Rule to build device tree blobs
|
|
$(obj)/%.dtb: $(src)/dts/%.dts FORCE
|
|
$(call if_changed_dep,dtc)
|
|
|
|
clean-files := *.dtb.S
|
|
|
|
zImage Image: $(bootdir-y)
|
|
|
|
$(bootdir-y): $(addprefix $(obj)/,$(subdir-y)) \
|
|
$(addprefix $(obj)/,$(host-progs))
|
|
$(Q)$(MAKE) $(build)=$(obj)/$@ $(MAKECMDGOALS)
|
|
|
|
OBJCOPYFLAGS = --strip-all -R .comment -R .note.gnu.build-id -O binary
|
|
|
|
vmlinux.bin: vmlinux FORCE
|
|
$(call if_changed,objcopy)
|
|
|
|
vmlinux.bin.gz: vmlinux.bin FORCE
|
|
$(call if_changed,gzip)
|
|
|
|
boot-elf: vmlinux.bin
|
|
boot-redboot: vmlinux.bin.gz
|
|
boot-uboot: vmlinux.bin.gz
|