summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@linaro.org>2013-10-03 21:04:31 +0100
committerGrant Likely <grant.likely@linaro.org>2013-10-14 12:43:44 +0100
commit444c91e5720cb5b825356e32c67c2c5184d1c09a (patch)
treea264d45e0bce1325775c12ae9c73e3d64b5df21d
parent61e6cfa80de5760bbe406f4e815b7739205754d2 (diff)
downloadblackbird-op-linux-444c91e5720cb5b825356e32c67c2c5184d1c09a.tar.gz
blackbird-op-linux-444c91e5720cb5b825356e32c67c2c5184d1c09a.zip
of: fix unnecessary warning on missing /cpus node
Not all DT platforms have all the cpus collected under a /cpus node. That just happens to be a details of FDT, ePAPR and PowerPC platforms. Sparc does something different, but unfortunately the current code complains with a warning if /cpus isn't there. This became a problem with commit f86e4718, "driver/core cpu: initialize of_node in cpu's device structure", which caused the function to get called for all architectures. This commit is a temporary fix to fail silently if the cpus node isn't present. A proper fix will come later to allow arch code to provide a custom mechanism for decoding the CPU hwid if the 'reg' property isn't appropriate. Signed-off-by: Grant Likely <grant.likely@linaro.org> Cc: David Miller <davem@davemloft.net> Cc: Sudeep KarkadaNagesha <Sudeep.KarkadaNagesha@arm.com> Cc: Rob Herring <rob.herring@calxeda.com>
-rw-r--r--drivers/of/base.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/of/base.c b/drivers/of/base.c
index 865d3f66c86b..7d4c70f859e3 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -303,10 +303,8 @@ struct device_node *of_get_cpu_node(int cpu, unsigned int *thread)
struct device_node *cpun, *cpus;
cpus = of_find_node_by_path("/cpus");
- if (!cpus) {
- pr_warn("Missing cpus node, bailing out\n");
+ if (!cpus)
return NULL;
- }
for_each_child_of_node(cpus, cpun) {
if (of_node_cmp(cpun->type, "cpu"))
OpenPOWER on IntegriCloud