aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2012-06-24 14:24:44 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2012-07-10 05:18:54 -0400
commit44b372d8a099a7042f9f17ebd4941050e38c1773 (patch)
treecae6962bdcd49c042dddcea94d516545143518ec
parent62761d1f68937b4d3dd509032942290f2359bde7 (diff)
powerpc/vio: Separate vio bus probe and device probe
Similar to PCI, separate the bus probe from device probe. This allows us to attach bus notifiers for DMA debug and IOMMU fault injection before devices have been probed. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-rw-r--r--arch/powerpc/kernel/vio.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/vio.c b/arch/powerpc/kernel/vio.c
index 7d05fe2b5637..3bb5be5da31c 100644
--- a/arch/powerpc/kernel/vio.c
+++ b/arch/powerpc/kernel/vio.c
@@ -1497,12 +1497,18 @@ static int __init vio_bus_init(void)
1497 if (firmware_has_feature(FW_FEATURE_CMO)) 1497 if (firmware_has_feature(FW_FEATURE_CMO))
1498 vio_cmo_bus_init(); 1498 vio_cmo_bus_init();
1499 1499
1500 return 0;
1501}
1502postcore_initcall(vio_bus_init);
1503
1504static int __init vio_device_init(void)
1505{
1500 vio_bus_scan_register_devices("vdevice"); 1506 vio_bus_scan_register_devices("vdevice");
1501 vio_bus_scan_register_devices("ibm,platform-facilities"); 1507 vio_bus_scan_register_devices("ibm,platform-facilities");
1502 1508
1503 return 0; 1509 return 0;
1504} 1510}
1505__initcall(vio_bus_init); 1511device_initcall(vio_device_init);
1506 1512
1507static ssize_t name_show(struct device *dev, 1513static ssize_t name_show(struct device *dev,
1508 struct device_attribute *attr, char *buf) 1514 struct device_attribute *attr, char *buf)