@@ -1361,18 +1361,7 @@ void __noreturn __nomcount main_cpu_entry(const void *fdt)
/* NX init */
nx_init();
- /* Probe PHB3 on P8 */
- probe_phb3();
-
- /* Probe PHB4 on P9 and PHB5 on P10 */
- probe_phb4();
-
- /* Probe NPUs */
- probe_npu();
- probe_npu2();
- probe_npu3();
-
- /* Probe all HWPROBE hardware we have code linked for*/
+ /* Probe all HWPROBE hardware we have code linked for */
probe_hardware();
/* Initialize PCI */
@@ -1691,3 +1691,5 @@ void probe_npu(void)
dt_for_each_compatible(dt_root, np, "ibm,power8-npu-pciex")
npu_create_phb(np);
}
+
+DEFINE_HWPROBE_DEPS(npu, probe_npu, "phb3");
@@ -679,3 +679,5 @@ void probe_npu2(void)
setup_devices(npu);
}
}
+
+DEFINE_HWPROBE_DEPS(npu2, probe_npu2, "phb4");
@@ -547,3 +547,5 @@ void probe_npu3(void)
npu3_init(npu);
}
}
+
+DEFINE_HWPROBE_DEPS(npu3, probe_npu3, "phb4");
@@ -5049,4 +5049,4 @@ void probe_phb3(void)
phb3_create(np);
}
-
+DEFINE_HWPROBE(phb3, probe_phb3);
@@ -6398,3 +6398,5 @@ void probe_phb4(void)
phb4_create(np);
}
}
+
+DEFINE_HWPROBE(phb4, probe_phb4);