Skip to content

Commit 205a1ee

Browse files
committed
powerpc: vio_cmo: use dev_groups and not dev_attrs for bus_type
The dev_attrs field has long been "depreciated" and is finally being removed, so move the driver to use the "correct" dev_groups field instead for struct bus_type. Cc: Benjamin Herrenschmidt <[email protected]> Cc: Paul Mackerras <[email protected]> Cc: Vineet Gupta <[email protected]> Cc: Bart Van Assche <[email protected]> Cc: Robin Murphy <[email protected]> Cc: Joerg Roedel <[email protected]> Cc: Johan Hovold <[email protected]> Cc: Alexey Kardashevskiy <[email protected]> Cc: Krzysztof Kozlowski <[email protected]> Cc: <[email protected]> Acked-by: Michael Ellerman <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent 451e3f1 commit 205a1ee

File tree

1 file changed

+33
-23
lines changed
  • arch/powerpc/platforms/pseries

1 file changed

+33
-23
lines changed

arch/powerpc/platforms/pseries/vio.c

Lines changed: 33 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -948,29 +948,29 @@ static void vio_cmo_bus_init(void)
948948
/* sysfs device functions and data structures for CMO */
949949

950950
#define viodev_cmo_rd_attr(name) \
951-
static ssize_t viodev_cmo_##name##_show(struct device *dev, \
951+
static ssize_t cmo_##name##_show(struct device *dev, \
952952
struct device_attribute *attr, \
953953
char *buf) \
954954
{ \
955955
return sprintf(buf, "%lu\n", to_vio_dev(dev)->cmo.name); \
956956
}
957957

958-
static ssize_t viodev_cmo_allocs_failed_show(struct device *dev,
958+
static ssize_t cmo_allocs_failed_show(struct device *dev,
959959
struct device_attribute *attr, char *buf)
960960
{
961961
struct vio_dev *viodev = to_vio_dev(dev);
962962
return sprintf(buf, "%d\n", atomic_read(&viodev->cmo.allocs_failed));
963963
}
964964

965-
static ssize_t viodev_cmo_allocs_failed_reset(struct device *dev,
965+
static ssize_t cmo_allocs_failed_store(struct device *dev,
966966
struct device_attribute *attr, const char *buf, size_t count)
967967
{
968968
struct vio_dev *viodev = to_vio_dev(dev);
969969
atomic_set(&viodev->cmo.allocs_failed, 0);
970970
return count;
971971
}
972972

973-
static ssize_t viodev_cmo_desired_set(struct device *dev,
973+
static ssize_t cmo_desired_store(struct device *dev,
974974
struct device_attribute *attr, const char *buf, size_t count)
975975
{
976976
struct vio_dev *viodev = to_vio_dev(dev);
@@ -993,27 +993,37 @@ static ssize_t name_show(struct device *, struct device_attribute *, char *);
993993
static ssize_t devspec_show(struct device *, struct device_attribute *, char *);
994994
static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
995995
char *buf);
996-
static struct device_attribute vio_cmo_dev_attrs[] = {
997-
__ATTR_RO(name),
998-
__ATTR_RO(devspec),
999-
__ATTR_RO(modalias),
1000-
__ATTR(cmo_desired, S_IWUSR|S_IRUSR|S_IWGRP|S_IRGRP|S_IROTH,
1001-
viodev_cmo_desired_show, viodev_cmo_desired_set),
1002-
__ATTR(cmo_entitled, S_IRUGO, viodev_cmo_entitled_show, NULL),
1003-
__ATTR(cmo_allocated, S_IRUGO, viodev_cmo_allocated_show, NULL),
1004-
__ATTR(cmo_allocs_failed, S_IWUSR|S_IRUSR|S_IWGRP|S_IRGRP|S_IROTH,
1005-
viodev_cmo_allocs_failed_show, viodev_cmo_allocs_failed_reset),
1006-
__ATTR_NULL
996+
997+
static struct device_attribute dev_attr_name;
998+
static struct device_attribute dev_attr_devspec;
999+
static struct device_attribute dev_attr_modalias;
1000+
1001+
static DEVICE_ATTR_RO(cmo_entitled);
1002+
static DEVICE_ATTR_RO(cmo_allocated);
1003+
static DEVICE_ATTR_RW(cmo_desired);
1004+
static DEVICE_ATTR_RW(cmo_allocs_failed);
1005+
1006+
static struct attribute *vio_cmo_dev_attrs[] = {
1007+
&dev_attr_name.attr,
1008+
&dev_attr_devspec.attr,
1009+
&dev_attr_modalias.attr,
1010+
&dev_attr_cmo_entitled.attr,
1011+
&dev_attr_cmo_allocated.attr,
1012+
&dev_attr_cmo_desired.attr,
1013+
&dev_attr_cmo_allocs_failed.attr,
1014+
NULL,
10071015
};
1016+
ATTRIBUTE_GROUPS(vio_cmo_dev);
10081017

10091018
/* sysfs bus functions and data structures for CMO */
10101019

10111020
#define viobus_cmo_rd_attr(name) \
1012-
static ssize_t cmo_##name##_show(struct bus_type *bt, char *buf) \
1021+
static ssize_t cmo_bus_##name##_show(struct bus_type *bt, char *buf) \
10131022
{ \
10141023
return sprintf(buf, "%lu\n", vio_cmo.name); \
10151024
} \
1016-
static BUS_ATTR_RO(cmo_##name)
1025+
static struct bus_attribute bus_attr_cmo_bus_##name = \
1026+
__ATTR(cmo_##name, S_IRUGO, cmo_bus_##name##_show, NULL)
10171027

10181028
#define viobus_cmo_pool_rd_attr(name, var) \
10191029
static ssize_t \
@@ -1051,11 +1061,11 @@ static ssize_t cmo_high_store(struct bus_type *bt, const char *buf,
10511061
static BUS_ATTR_RW(cmo_high);
10521062

10531063
static struct attribute *vio_bus_attrs[] = {
1054-
&bus_attr_cmo_entitled.attr,
1055-
&bus_attr_cmo_spare.attr,
1056-
&bus_attr_cmo_min.attr,
1057-
&bus_attr_cmo_desired.attr,
1058-
&bus_attr_cmo_curr.attr,
1064+
&bus_attr_cmo_bus_entitled.attr,
1065+
&bus_attr_cmo_bus_spare.attr,
1066+
&bus_attr_cmo_bus_min.attr,
1067+
&bus_attr_cmo_bus_desired.attr,
1068+
&bus_attr_cmo_bus_curr.attr,
10591069
&bus_attr_cmo_high.attr,
10601070
&bus_attr_cmo_reserve_size.attr,
10611071
&bus_attr_cmo_excess_size.attr,
@@ -1066,7 +1076,7 @@ ATTRIBUTE_GROUPS(vio_bus);
10661076

10671077
static void vio_cmo_sysfs_init(void)
10681078
{
1069-
vio_bus_type.dev_attrs = vio_cmo_dev_attrs;
1079+
vio_bus_type.dev_groups = vio_cmo_dev_groups;
10701080
vio_bus_type.bus_groups = vio_bus_groups;
10711081
}
10721082
#else /* CONFIG_PPC_SMLPAR */

0 commit comments

Comments
 (0)