@@ -54,7 +54,18 @@ static const struct cpu_operations * __init cpu_get_ops(const char *name)
*/
int __init cpu_read_ops(struct device_node *dn, int cpu)
{
- const char *enable_method = of_get_property(dn, "enable-method", NULL);
+ const char *enable_method = NULL;
+ of_property_read_string(dn, "enable-method", &enable_method);
+
+ if (!enable_method) {
+ /*
+ * Perhaps we have a common /cpus/enable-method
+ */
+ struct device_node *cpus = of_get_parent(dn);
+ of_property_read_string(cpus, "enable-method", &enable_method);
+ of_node_put(cpus);
+ }
+
if (!enable_method) {
/*
* The boot CPU may not have an enable method (e.g. when