aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/sh
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2010-04-12 21:16:34 -0400
committerPaul Mundt <lethal@linux-sh.org>2010-04-12 21:16:34 -0400
commit0ded75428605213641897d6b8d8e9cf9fdb6eb8d (patch)
treeca9088ff89b42190df432650c2294abcbc3c735b /drivers/sh
parent050d4cc7029b73997d6821d89487b1f777d4873c (diff)
sh: intc: Provide sysdev name for intc controllers.
Presently the sysdevs are simply numbered based on the list position, without having any direct way of figuring out which controller these are actually mapping to. This provides a name attr for mapping out the chip name. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/sh')
-rw-r--r--drivers/sh/intc.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/sh/intc.c b/drivers/sh/intc.c
index f43850527645..b605f7e478d6 100644
--- a/drivers/sh/intc.c
+++ b/drivers/sh/intc.c
@@ -1034,6 +1034,18 @@ err0:
1034 return -ENOMEM; 1034 return -ENOMEM;
1035} 1035}
1036 1036
1037static ssize_t
1038show_intc_name(struct sys_device *dev, struct sysdev_attribute *attr, char *buf)
1039{
1040 struct intc_desc_int *d;
1041
1042 d = container_of(dev, struct intc_desc_int, sysdev);
1043
1044 return sprintf(buf, "%s\n", d->chip.name);
1045}
1046
1047static SYSDEV_ATTR(name, S_IRUGO, show_intc_name, NULL);
1048
1037static int intc_suspend(struct sys_device *dev, pm_message_t state) 1049static int intc_suspend(struct sys_device *dev, pm_message_t state)
1038{ 1050{
1039 struct intc_desc_int *d; 1051 struct intc_desc_int *d;
@@ -1098,8 +1110,12 @@ static int __init register_intc_sysdevs(void)
1098 d->sysdev.id = id; 1110 d->sysdev.id = id;
1099 d->sysdev.cls = &intc_sysdev_class; 1111 d->sysdev.cls = &intc_sysdev_class;
1100 error = sysdev_register(&d->sysdev); 1112 error = sysdev_register(&d->sysdev);
1113 if (error == 0)
1114 error = sysdev_create_file(&d->sysdev,
1115 &attr_name);
1101 if (error) 1116 if (error)
1102 break; 1117 break;
1118
1103 id++; 1119 id++;
1104 } 1120 }
1105 } 1121 }