diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2012-02-15 20:38:40 -0700 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2012-02-21 13:33:00 -0700 |
commit | 0f22dd395fc473cee252b9af50249b8e0f32fde7 (patch) | |
tree | 680ec5999048bd79f665ddeaa8bcaa259ee53ed7 /drivers/of | |
parent | 5411972995b27a9074062b6d8e106fc15bd1cd44 (diff) | |
download | op-kernel-dev-0f22dd395fc473cee252b9af50249b8e0f32fde7.zip op-kernel-dev-0f22dd395fc473cee252b9af50249b8e0f32fde7.tar.gz |
of: Only compile OF_DYNAMIC on PowerPC pseries and iseries
Only two architectures use the OF node reference counting and reclaim bits.
There is no need to compile it for the rest of the PowerPC platforms or for
any of the other architectures. This patch makes iseries and pseries
select CONFIG_OF_DYNAMIC, and makes it default to off for everything else.
It is still safe to turn on CONFIG_OF_DYNAMIC on all architectures, it just
isn't necessary.
v2: Also select OF_DYNAMIC for PPC_CHROMA and MPC885ADS as reported by Michael
Meuling
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: David S. Miller <davem@davemloft.net>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Jimi Xenidis <jimix@pobox.com> (for PPC_CHROMA bug fix)
Cc: Rob Herring <rob.herring@calxeda.com>
Diffstat (limited to 'drivers/of')
-rw-r--r-- | drivers/of/Kconfig | 5 | ||||
-rw-r--r-- | drivers/of/base.c | 4 |
2 files changed, 5 insertions, 4 deletions
diff --git a/drivers/of/Kconfig b/drivers/of/Kconfig index 268163d..6ea51dc 100644 --- a/drivers/of/Kconfig +++ b/drivers/of/Kconfig @@ -35,9 +35,10 @@ config OF_EARLY_FLATTREE config OF_PROMTREE bool +# Hardly any platforms need this. It is safe to select, but only do so if you +# need it. config OF_DYNAMIC - def_bool y - depends on PPC_OF + bool config OF_ADDRESS def_bool y diff --git a/drivers/of/base.c b/drivers/of/base.c index 13ba728..5806449 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c @@ -88,7 +88,7 @@ int of_n_size_cells(struct device_node *np) } EXPORT_SYMBOL(of_n_size_cells); -#if !defined(CONFIG_SPARC) /* SPARC doesn't do ref counting (yet) */ +#if defined(CONFIG_OF_DYNAMIC) /** * of_node_get - Increment refcount of a node * @node: Node to inc refcount, NULL is supported to @@ -161,7 +161,7 @@ void of_node_put(struct device_node *node) kref_put(&node->kref, of_node_release); } EXPORT_SYMBOL(of_node_put); -#endif /* !CONFIG_SPARC */ +#endif /* CONFIG_OF_DYNAMIC */ struct property *of_find_property(const struct device_node *np, const char *name, |