rapidio: fix RapidIO sysfs hierarchy
authorAlexandre Bounine <[email protected]>
Wed, 27 Oct 2010 22:34:26 +0000 (15:34 -0700)
committerLinus Torvalds <[email protected]>
Thu, 28 Oct 2010 01:03:15 +0000 (18:03 -0700)
This set of RapidIO patches extends support for standard error recovery
mechanism and adds new IDT Gen2 sRIO switch devices - CPS-1848 and
CPS-1616.  Implementation of the standard error-stopped state recovery
mechanism (as defined by the RapidIO specification) is required for the
new switches.

Version 2 of this set of patches addresses received comments and fixes an
error notification setup issue found in the idt_gen2.c after the first
version was released.

This patch:

Make RapidIO devices appear in /sys/devices/rapidio directory instead of
top of /sys/devices directory.

Signed-off-by: Alexandre Bounine <[email protected]>
Cc: Thomas Moll <[email protected]>
Cc: Matt Porter <[email protected]>
Cc: Li Yang <[email protected]>
Cc: Kumar Gala <[email protected]>
Cc: Micha Nelissen <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
drivers/rapidio/rio-driver.c
drivers/rapidio/rio-scan.c
include/linux/rio.h

index 3222fa3c808ca4c96eeb3fc436122f041a84eebc..0f4a53bdaa3cf9b8e60c4c8dfbf5d6f80b3cf882 100644 (file)
@@ -192,7 +192,7 @@ static int rio_match_bus(struct device *dev, struct device_driver *drv)
       out:return 0;
 }
 
-static struct device rio_bus = {
+struct device rio_bus = {
        .init_name = "rapidio",
 };
 
index 8070e074c739f89b0902cfcc1ed9c20e5374c76c..1123be8f4b182234457618b1185e81fe65107320 100644 (file)
@@ -478,6 +478,7 @@ static struct rio_dev __devinit *rio_setup_device(struct rio_net *net,
        }
 
        rdev->dev.bus = &rio_bus_type;
+       rdev->dev.parent = &rio_bus;
 
        device_initialize(&rdev->dev);
        rdev->dev.release = rio_release_dev;
index bd6eb0ed34a7d743f370295390fd440f5234b2e1..84c9f8c5fb236841f55b76ec717d1b722fe494a0 100644 (file)
@@ -67,6 +67,7 @@
 #define RIO_PW_MSG_SIZE                64
 
 extern struct bus_type rio_bus_type;
+extern struct device rio_bus;
 extern struct list_head rio_devices;   /* list of all devices */
 
 struct rio_mport;