aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Neuendorffer <stephen.neuendorffer@xilinx.com>2010-11-18 18:54:56 -0500
committerGrant Likely <grant.likely@secretlab.ca>2010-12-29 18:08:18 -0500
commite6ce1324e4f08b0d984340201a125806dae0e9a6 (patch)
treefe7e203f2e5d73b555a6fcb713948cf4fe5f7715
parent55271024a735d0c3234e6ca7e0914b05aab7fbac (diff)
of/flattree: Add Kconfig for EARLY_FLATTREE
The device tree code is now in two pieces: some which can be used generically on any platform which selects CONFIG_OF_FLATTREE, and some early which is used at boot time on only a few architectures. This patch segregates the early code so that only those architectures which care about it need compile it. This also means that some of the requirements in the early code (such as a cmd_line variable) that most architectures (e.g. X86) don't provide can be ignored. Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> [grant.likely@secretlab.ca: remove extra blank line addition] [grant.likely@secretlab.ca: fixed incorrect #ifdef CONFIG_EARLY_FLATTREE check] [grant.likely@secretlab.ca: Made OF_EARLY_FLATTREE select instead of depend on OF_FLATTREE] Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
-rw-r--r--arch/microblaze/Kconfig2
-rw-r--r--arch/mips/Kconfig2
-rw-r--r--arch/powerpc/Kconfig2
-rw-r--r--drivers/of/Kconfig4
-rw-r--r--drivers/of/fdt.c4
5 files changed, 11 insertions, 3 deletions
diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
index 387d5ffdfd3a..5f5018a71a3d 100644
--- a/arch/microblaze/Kconfig
+++ b/arch/microblaze/Kconfig
@@ -14,7 +14,7 @@ config MICROBLAZE
14 select HAVE_DMA_API_DEBUG 14 select HAVE_DMA_API_DEBUG
15 select TRACING_SUPPORT 15 select TRACING_SUPPORT
16 select OF 16 select OF
17 select OF_FLATTREE 17 select OF_EARLY_FLATTREE
18 18
19config SWAP 19config SWAP
20 def_bool n 20 def_bool n
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 0a9b5b8b2a19..f489ec30e071 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -2218,7 +2218,7 @@ config SECCOMP
2218config USE_OF 2218config USE_OF
2219 bool "Flattened Device Tree support" 2219 bool "Flattened Device Tree support"
2220 select OF 2220 select OF
2221 select OF_FLATTREE 2221 select OF_EARLY_FLATTREE
2222 help 2222 help
2223 Include support for flattened device tree machine descriptions. 2223 Include support for flattened device tree machine descriptions.
2224 2224
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index e625e9e034ae..48fb4790bfec 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -116,7 +116,7 @@ config PPC
116 bool 116 bool
117 default y 117 default y
118 select OF 118 select OF
119 select OF_FLATTREE 119 select OF_EARLY_FLATTREE
120 select HAVE_FTRACE_MCOUNT_RECORD 120 select HAVE_FTRACE_MCOUNT_RECORD
121 select HAVE_DYNAMIC_FTRACE 121 select HAVE_DYNAMIC_FTRACE
122 select HAVE_FUNCTION_TRACER 122 select HAVE_FUNCTION_TRACER
diff --git a/drivers/of/Kconfig b/drivers/of/Kconfig
index e4b93a0a15d2..3c6e100a3ad0 100644
--- a/drivers/of/Kconfig
+++ b/drivers/of/Kconfig
@@ -19,6 +19,10 @@ config OF_FLATTREE
19 bool 19 bool
20 select DTC 20 select DTC
21 21
22config OF_EARLY_FLATTREE
23 bool
24 select OF_FLATTREE
25
22config OF_PROMTREE 26config OF_PROMTREE
23 bool 27 bool
24 28
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index c1360e02f921..2ebacf14e7de 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -27,6 +27,8 @@ int __initdata dt_root_size_cells;
27 27
28struct boot_param_header *initial_boot_params; 28struct boot_param_header *initial_boot_params;
29 29
30#ifdef CONFIG_OF_EARLY_FLATTREE
31
30char *find_flat_dt_string(u32 offset) 32char *find_flat_dt_string(u32 offset)
31{ 33{
32 return ((char *)initial_boot_params) + 34 return ((char *)initial_boot_params) +
@@ -604,3 +606,5 @@ void __init unflatten_device_tree(void)
604 606
605 pr_debug(" <- unflatten_device_tree()\n"); 607 pr_debug(" <- unflatten_device_tree()\n");
606} 608}
609
610#endif /* CONFIG_OF_EARLY_FLATTREE */