mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-11 15:40:50 +00:00
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>
This commit is contained in:
parent
61e6cfa80d
commit
444c91e572
@ -303,10 +303,8 @@ struct device_node *of_get_cpu_node(int cpu, unsigned int *thread)
|
|||||||
struct device_node *cpun, *cpus;
|
struct device_node *cpun, *cpus;
|
||||||
|
|
||||||
cpus = of_find_node_by_path("/cpus");
|
cpus = of_find_node_by_path("/cpus");
|
||||||
if (!cpus) {
|
if (!cpus)
|
||||||
pr_warn("Missing cpus node, bailing out\n");
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
|
||||||
|
|
||||||
for_each_child_of_node(cpus, cpun) {
|
for_each_child_of_node(cpus, cpun) {
|
||||||
if (of_node_cmp(cpun->type, "cpu"))
|
if (of_node_cmp(cpun->type, "cpu"))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user