diff options
Diffstat (limited to 'p08.patch')
| -rw-r--r-- | p08.patch | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/p08.patch b/p08.patch new file mode 100644 index 00000000000000..a59cf69031439d --- /dev/null +++ b/p08.patch @@ -0,0 +1,106 @@ +--- + drivers/rapidio/rio-driver.c | 2 +- + drivers/rapidio/rio-sysfs.c | 38 ++++++++++++++++++++++++-------------- + drivers/rapidio/rio.h | 2 +- + 3 files changed, 26 insertions(+), 16 deletions(-) + +--- a/drivers/rapidio/rio-driver.c ++++ b/drivers/rapidio/rio-driver.c +@@ -223,7 +223,7 @@ struct device rio_bus = { + struct bus_type rio_bus_type = { + .name = "rapidio", + .match = rio_match_bus, +- .dev_attrs = rio_dev_attrs, ++ .dev_groups = rio_dev_groups, + .bus_groups = rio_bus_groups, + .probe = rio_device_probe, + .remove = rio_device_remove, +--- a/drivers/rapidio/rio-sysfs.c ++++ b/drivers/rapidio/rio-sysfs.c +@@ -27,6 +27,7 @@ field##_show(struct device *dev, struct + \ + return sprintf(buf, format_string, rdev->field); \ + } \ ++static DEVICE_ATTR_RO(field); + + rio_config_attr(did, "0x%04x\n"); + rio_config_attr(vid, "0x%04x\n"); +@@ -54,6 +55,7 @@ static ssize_t routes_show(struct device + + return (str - buf); + } ++static DEVICE_ATTR_RO(routes); + + static ssize_t lprev_show(struct device *dev, + struct device_attribute *attr, char *buf) +@@ -63,6 +65,7 @@ static ssize_t lprev_show(struct device + return sprintf(buf, "%s\n", + (rdev->prev) ? rio_name(rdev->prev) : "root"); + } ++static DEVICE_ATTR_RO(lprev); + + static ssize_t lnext_show(struct device *dev, + struct device_attribute *attr, char *buf) +@@ -83,6 +86,7 @@ static ssize_t lnext_show(struct device + + return str - buf; + } ++static DEVICE_ATTR_RO(lnext); + + static ssize_t modalias_show(struct device *dev, + struct device_attribute *attr, char *buf) +@@ -92,23 +96,29 @@ static ssize_t modalias_show(struct devi + return sprintf(buf, "rapidio:v%04Xd%04Xav%04Xad%04X\n", + rdev->vid, rdev->did, rdev->asm_vid, rdev->asm_did); + } ++static DEVICE_ATTR_RO(modalias); + +-struct device_attribute rio_dev_attrs[] = { +- __ATTR_RO(did), +- __ATTR_RO(vid), +- __ATTR_RO(device_rev), +- __ATTR_RO(asm_did), +- __ATTR_RO(asm_vid), +- __ATTR_RO(asm_rev), +- __ATTR_RO(lprev), +- __ATTR_RO(destid), +- __ATTR_RO(modalias), +- __ATTR_NULL, ++static struct attribute *rio_dev_attrs[] = { ++ &dev_attr_did.attr, ++ &dev_attr_vid.attr, ++ &dev_attr_device_rev.attr, ++ &dev_attr_asm_did.attr, ++ &dev_attr_asm_vid.attr, ++ &dev_attr_asm_rev.attr, ++ &dev_attr_lprev.attr, ++ &dev_attr_destid.attr, ++ &dev_attr_modalias.attr, ++ NULL, + }; + +-static DEVICE_ATTR(routes, S_IRUGO, routes_show, NULL); +-static DEVICE_ATTR(lnext, S_IRUGO, lnext_show, NULL); +-static DEVICE_ATTR(hopcount, S_IRUGO, hopcount_show, NULL); ++static const struct attribute_group rio_dev_group = { ++ .attrs = rio_dev_attrs, ++}; ++ ++const struct attribute_group *rio_dev_groups[] = { ++ &rio_dev_group, ++ NULL, ++}; + + static ssize_t + rio_read_config(struct file *filp, struct kobject *kobj, +--- a/drivers/rapidio/rio.h ++++ b/drivers/rapidio/rio.h +@@ -48,7 +48,7 @@ extern struct rio_mport *rio_find_mport( + extern int rio_mport_scan(int mport_id); + + /* Structures internal to the RIO core code */ +-extern struct device_attribute rio_dev_attrs[]; ++extern const struct attribute_group *rio_dev_groups[]; + extern const struct attribute_group *rio_bus_groups[]; + + #define RIO_GET_DID(size, x) (size ? (x & 0xffff) : ((x & 0x00ff0000) >> 16)) |
