Add support for building a device tree for sandbox's CONFIG_OF_HOSTFILE
option to make it easier to use device tree with sandbox.
This adjusts the Makefile to build a u-boot.dtb file which can be passed
to sandbox U-Boot with:
   ./u-boot -d u-boot.dtb
Signed-off-by: Simon Glass <sjg@chromium.org>
 ALL-$(CONFIG_SPL_FRAMEWORK) += u-boot.img
 ALL-$(CONFIG_TPL) += tpl/u-boot-tpl.bin
 ALL-$(CONFIG_OF_SEPARATE) += u-boot.dtb u-boot-dtb.bin
+ALL-$(CONFIG_OF_HOSTFILE) += u-boot.dtb
 ifneq ($(CONFIG_SPL_TARGET),)
 ALL-$(CONFIG_SPL) += $(CONFIG_SPL_TARGET:"%"=%)
 endif
 
 cmd_u-boot__ = $(CC) -o $@ -T u-boot.lds \
        -Wl,--start-group $(u-boot-main) -Wl,--end-group \
        $(PLATFORM_LIBS) -Wl,-Map -Wl,u-boot.map
+
+CONFIG_ARCH_DEVICE_TREE := sandbox
 
--- /dev/null
+dtb-$(CONFIG_SANDBOX) += sandbox.dtb
+
+targets += $(dtb-y)
+
+DTC_FLAGS += -R 4 -p 0x1000
+
+PHONY += dtbs
+dtbs: $(addprefix $(obj)/, $(dtb-y))
+       @:
+
+clean-files := *.dtb
 
--- /dev/null
+/dts-v1/;
+
+/ {
+       triangle {
+               compatible = "demo-shape";
+               colour = "cyan";
+               sides = <3>;
+               character = <83>;
+       };
+       square {
+               compatible = "demo-shape";
+               colour = "blue";
+               sides = <4>;
+       };
+       hexagon {
+               compatible = "demo-simple";
+               colour = "white";
+               sides = <6>;
+       };
+};
 
 #define CONFIG_FIT_SIGNATURE
 #define CONFIG_RSA
 #define CONFIG_CMD_FDT
+#define CONFIG_DEFAULT_DEVICE_TREE     sandbox
 
 #define CONFIG_FS_FAT
 #define CONFIG_FS_EXT4