PSCI requires a node to be inserted into the FDT. Do this for the user
automatically if PSCI is enabled.
Signed-off-by: Matthew Leach <matthew.leach@arm.com>
[Mark: add missing "method" property, fix indentation]
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
if PSCI
BOOTMETHOD := psci.o
+PSCI_NODE := psci { \
+ compatible = \"arm,psci\"; \
+ method = \"smc\"; \
+ cpu_on = <0x84000002>; \
+ cpu_off = <0x84000001>; \
+ };
else
BOOTMETHOD := spin.o
+PSCI_NODE :=
endif
MBOX_OFFSET := 0xfff8
$(CPP) $(CPPFLAGS) -ansi -DPHYS_OFFSET=$(PHYS_OFFSET) -DMBOX_OFFSET=$(MBOX_OFFSET) -DKERNEL_OFFSET=$(KERNEL_OFFSET) -DFDT_OFFSET=$(FDT_OFFSET) -DFS_OFFSET=$(FS_OFFSET) -DKERNEL=$(KERNEL_IMAGE) -DFILESYSTEM=$(FILESYSTEM) -DBOOTMETHOD=$(BOOTMETHOD) -P -C -o $@ $<
fdt.dtb: $(KERNEL_DTB) Makefile
- ( $(DTC) -O dts -I dtb $(KERNEL_DTB) ; echo "/ { $(CHOSEN_NODE) };" ) | $(DTC) -O dtb -o $@ -
+ ( $(DTC) -O dts -I dtb $(KERNEL_DTB) ; echo "/ { $(CHOSEN_NODE) $(PSCI_NODE) };" ) | $(DTC) -O dtb -o $@ -
# The filesystem archive might not exist if INITRD is not being used
.PHONY: all clean $(FILESYSTEM)