aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-07 21:09:08 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-19 23:02:44 -0400
commit3778a2129bcce84f684cc0017ed20d2524afd289 (patch)
treed709e0bbd763241f91e30090c7e1894778f4a234 /drivers/input
parent7eab8ded347244f1464006ace851521254cabb07 (diff)
input: serio: remove bus usage of dev_attrs
The dev_attrs field of struct bus_type is going away soon, so move the remaining sysfs files that are being described with this field to use dev_groups instead. Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: <linux-input@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/input')
-rw-r--r--drivers/input/serio/serio.c62
1 files changed, 30 insertions, 32 deletions
diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c
index 478880e3dde2..98707fb2cb5d 100644
--- a/drivers/input/serio/serio.c
+++ b/drivers/input/serio/serio.c
@@ -365,7 +365,7 @@ static ssize_t serio_show_description(struct device *dev, struct device_attribut
365 return sprintf(buf, "%s\n", serio->name); 365 return sprintf(buf, "%s\n", serio->name);
366} 366}
367 367
368static ssize_t serio_show_modalias(struct device *dev, struct device_attribute *attr, char *buf) 368static ssize_t modalias_show(struct device *dev, struct device_attribute *attr, char *buf)
369{ 369{
370 struct serio *serio = to_serio_port(dev); 370 struct serio *serio = to_serio_port(dev);
371 371
@@ -397,30 +397,7 @@ static ssize_t extra_show(struct device *dev, struct device_attribute *attr, cha
397 return sprintf(buf, "%02x\n", serio->id.extra); 397 return sprintf(buf, "%02x\n", serio->id.extra);
398} 398}
399 399
400static DEVICE_ATTR_RO(type); 400static ssize_t drvctl_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
401static DEVICE_ATTR_RO(proto);
402static DEVICE_ATTR_RO(id);
403static DEVICE_ATTR_RO(extra);
404
405static struct attribute *serio_device_id_attrs[] = {
406 &dev_attr_type.attr,
407 &dev_attr_proto.attr,
408 &dev_attr_id.attr,
409 &dev_attr_extra.attr,
410 NULL
411};
412
413static struct attribute_group serio_id_attr_group = {
414 .name = "id",
415 .attrs = serio_device_id_attrs,
416};
417
418static const struct attribute_group *serio_device_attr_groups[] = {
419 &serio_id_attr_group,
420 NULL
421};
422
423static ssize_t serio_rebind_driver(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
424{ 401{
425 struct serio *serio = to_serio_port(dev); 402 struct serio *serio = to_serio_port(dev);
426 struct device_driver *drv; 403 struct device_driver *drv;
@@ -474,14 +451,36 @@ static ssize_t serio_set_bind_mode(struct device *dev, struct device_attribute *
474 return retval; 451 return retval;
475} 452}
476 453
477static struct device_attribute serio_device_attrs[] = { 454static DEVICE_ATTR_RO(type);
478 __ATTR(description, S_IRUGO, serio_show_description, NULL), 455static DEVICE_ATTR_RO(proto);
479 __ATTR(modalias, S_IRUGO, serio_show_modalias, NULL), 456static DEVICE_ATTR_RO(id);
480 __ATTR(drvctl, S_IWUSR, NULL, serio_rebind_driver), 457static DEVICE_ATTR_RO(extra);
481 __ATTR(bind_mode, S_IWUSR | S_IRUGO, serio_show_bind_mode, serio_set_bind_mode), 458static DEVICE_ATTR_RO(modalias);
482 __ATTR_NULL 459static DEVICE_ATTR_WO(drvctl);
460static DEVICE_ATTR(description, S_IRUGO, serio_show_description, NULL);
461static DEVICE_ATTR(bind_mode, S_IWUSR | S_IRUGO, serio_show_bind_mode, serio_set_bind_mode);
462
463static struct attribute *serio_device_id_attrs[] = {
464 &dev_attr_type.attr,
465 &dev_attr_proto.attr,
466 &dev_attr_id.attr,
467 &dev_attr_extra.attr,
468 &dev_attr_modalias.attr,
469 &dev_attr_description.attr,
470 &dev_attr_drvctl.attr,
471 &dev_attr_bind_mode.attr,
472 NULL
473};
474
475static struct attribute_group serio_id_attr_group = {
476 .name = "id",
477 .attrs = serio_device_id_attrs,
483}; 478};
484 479
480static const struct attribute_group *serio_device_attr_groups[] = {
481 &serio_id_attr_group,
482 NULL
483};
485 484
486static void serio_release_port(struct device *dev) 485static void serio_release_port(struct device *dev)
487{ 486{
@@ -996,7 +995,6 @@ EXPORT_SYMBOL(serio_interrupt);
996 995
997static struct bus_type serio_bus = { 996static struct bus_type serio_bus = {
998 .name = "serio", 997 .name = "serio",
999 .dev_attrs = serio_device_attrs,
1000 .drv_groups = serio_driver_groups, 998 .drv_groups = serio_driver_groups,
1001 .match = serio_bus_match, 999 .match = serio_bus_match,
1002 .uevent = serio_uevent, 1000 .uevent = serio_uevent,