summaryrefslogtreecommitdiffstats
path: root/drivers/virtio
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-07 21:27:39 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-16 21:40:57 -0400
commit3736dab6e5e54c0f769f528f5616c335762bdac2 (patch)
tree413ad49e3a98365941829a86a63c03e0fee04d91 /drivers/virtio
parent5152a5098c6b0b2341982987918ae10eb4cc3f9c (diff)
virtio: convert bus code to use dev_groups
The dev_attrs field of struct bus_type is going away soon, dev_groups should be used instead. This converts the virtio bus code to use the correct field. Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: "Michael S. Tsirkin" <mst@redhat.com> Cc: <virtualization@lists.linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/virtio')
-rw-r--r--drivers/virtio/virtio.c27
1 files changed, 19 insertions, 8 deletions
diff --git a/drivers/virtio/virtio.c b/drivers/virtio/virtio.c
index ee59b74768d9..fed0ce198ae3 100644
--- a/drivers/virtio/virtio.c
+++ b/drivers/virtio/virtio.c
@@ -13,18 +13,24 @@ static ssize_t device_show(struct device *_d,
13 struct virtio_device *dev = dev_to_virtio(_d); 13 struct virtio_device *dev = dev_to_virtio(_d);
14 return sprintf(buf, "0x%04x\n", dev->id.device); 14 return sprintf(buf, "0x%04x\n", dev->id.device);
15} 15}
16static DEVICE_ATTR_RO(device);
17
16static ssize_t vendor_show(struct device *_d, 18static ssize_t vendor_show(struct device *_d,
17 struct device_attribute *attr, char *buf) 19 struct device_attribute *attr, char *buf)
18{ 20{
19 struct virtio_device *dev = dev_to_virtio(_d); 21 struct virtio_device *dev = dev_to_virtio(_d);
20 return sprintf(buf, "0x%04x\n", dev->id.vendor); 22 return sprintf(buf, "0x%04x\n", dev->id.vendor);
21} 23}
24static DEVICE_ATTR_RO(vendor);
25
22static ssize_t status_show(struct device *_d, 26static ssize_t status_show(struct device *_d,
23 struct device_attribute *attr, char *buf) 27 struct device_attribute *attr, char *buf)
24{ 28{
25 struct virtio_device *dev = dev_to_virtio(_d); 29 struct virtio_device *dev = dev_to_virtio(_d);
26 return sprintf(buf, "0x%08x\n", dev->config->get_status(dev)); 30 return sprintf(buf, "0x%08x\n", dev->config->get_status(dev));
27} 31}
32static DEVICE_ATTR_RO(status);
33
28static ssize_t modalias_show(struct device *_d, 34static ssize_t modalias_show(struct device *_d,
29 struct device_attribute *attr, char *buf) 35 struct device_attribute *attr, char *buf)
30{ 36{
@@ -32,6 +38,8 @@ static ssize_t modalias_show(struct device *_d,
32 return sprintf(buf, "virtio:d%08Xv%08X\n", 38 return sprintf(buf, "virtio:d%08Xv%08X\n",
33 dev->id.device, dev->id.vendor); 39 dev->id.device, dev->id.vendor);
34} 40}
41static DEVICE_ATTR_RO(modalias);
42
35static ssize_t features_show(struct device *_d, 43static ssize_t features_show(struct device *_d,
36 struct device_attribute *attr, char *buf) 44 struct device_attribute *attr, char *buf)
37{ 45{
@@ -47,14 +55,17 @@ static ssize_t features_show(struct device *_d,
47 len += sprintf(buf+len, "\n"); 55 len += sprintf(buf+len, "\n");
48 return len; 56 return len;
49} 57}
50static struct device_attribute virtio_dev_attrs[] = { 58static DEVICE_ATTR_RO(features);
51 __ATTR_RO(device), 59
52 __ATTR_RO(vendor), 60static struct attribute *virtio_dev_attrs[] = {
53 __ATTR_RO(status), 61 &dev_attr_device.attr,
54 __ATTR_RO(modalias), 62 &dev_attr_vendor.attr,
55 __ATTR_RO(features), 63 &dev_attr_status.attr,
56 __ATTR_NULL 64 &dev_attr_modalias.attr,
65 &dev_attr_features.attr,
66 NULL,
57}; 67};
68ATTRIBUTE_GROUPS(virtio_dev);
58 69
59static inline int virtio_id_match(const struct virtio_device *dev, 70static inline int virtio_id_match(const struct virtio_device *dev,
60 const struct virtio_device_id *id) 71 const struct virtio_device_id *id)
@@ -165,7 +176,7 @@ static int virtio_dev_remove(struct device *_d)
165static struct bus_type virtio_bus = { 176static struct bus_type virtio_bus = {
166 .name = "virtio", 177 .name = "virtio",
167 .match = virtio_dev_match, 178 .match = virtio_dev_match,
168 .dev_attrs = virtio_dev_attrs, 179 .dev_groups = virtio_dev_groups,
169 .uevent = virtio_uevent, 180 .uevent = virtio_uevent,
170 .probe = virtio_dev_probe, 181 .probe = virtio_dev_probe,
171 .remove = virtio_dev_remove, 182 .remove = virtio_dev_remove,