@@ -31,8 +31,12 @@ config HAS_ALTERNATIVE
config HAS_COMPAT
bool
+config CORE_DEVICE_TREE
+ bool
+
config HAS_DEVICE_TREE
bool
+ select CORE_DEVICE_TREE
config HAS_EX_TABLE
bool
@@ -333,6 +337,7 @@ config ARGO
config HYPERLAUNCH
bool "Hyperlaunch support (UNSUPPORTED)" if UNSUPPORTED
+ select CORE_DEVICE_TREE
---help---
Enables launch of multiple VMs at host boot as an alternative
method of starting a Xen system.
@@ -4,7 +4,7 @@ obj-$(CONFIG_HYPFS_CONFIG) += config_data.o
obj-$(CONFIG_CORE_PARKING) += core_parking.o
obj-y += cpu.o
obj-$(CONFIG_DEBUG_TRACE) += debugtrace.o
-obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o
+obj-$(CONFIG_CORE_DEVICE_TREE) += device_tree.o
obj-$(CONFIG_IOREQ_SERVER) += dm.o
obj-y += domain.o
obj-y += event_2l.o
@@ -73,7 +73,7 @@ obj-y += sched/
obj-$(CONFIG_UBSAN) += ubsan/
obj-$(CONFIG_NEEDS_LIBELF) += libelf/
-obj-$(CONFIG_HAS_DEVICE_TREE) += libfdt/
+obj-$(CONFIG_CORE_DEVICE_TREE) += libfdt/
CONF_FILE := $(if $(patsubst /%,,$(KCONFIG_CONFIG)),$(BASEDIR)/)$(KCONFIG_CONFIG)
config.gz: $(CONF_FILE)
@@ -2012,9 +2012,11 @@ static unsigned long __init unflatten_dt_node(const void *fdt,
((char *)pp->value)[sz - 1] = 0;
dt_dprintk("fixed up name for %s -> %s\n", pathp,
(char *)pp->value);
+#ifdef CONFIG_ARM
/* Generic device initialization */
np->dev.type = DEV_DT;
np->dev.of_node = np;
+#endif
}
}
if ( allnextpp )
@@ -101,9 +101,12 @@ struct dt_device_node {
*/
struct list_head domain_list;
+#ifdef CONFIG_ARM
struct device dev;
+#endif
};
+#ifdef CONFIG_ARM
#define dt_to_dev(dt_node) (&(dt_node)->dev)
static inline struct dt_device_node *dev_to_dt(struct device *dev)
@@ -112,6 +115,7 @@ static inline struct dt_device_node *dev_to_dt(struct device *dev)
return container_of(dev, struct dt_device_node, dev);
}
+#endif
#define MAX_PHANDLE_ARGS 16
struct dt_phandle_args {