Commit dcb34abb authored by's avatar Committed by Paul Mackerras
Browse files

[PATCH] Add modalias to macio sysfs attributes

Provide a "compatible" entry in /sys/bus/macio/devices/*/ This can be used
to load drivers via the modules.alias file.
Signed-off-by: default avatarOlaf Hering <>
Acked-by: default avatarBenjamin Herrenschmidt <>
Signed-off-by: default avatarAndrew Morton <>
Signed-off-by: default avatarPaul Mackerras <>
parent 35e95e63
......@@ -39,6 +39,31 @@ compatible_show (struct device *dev, struct device_attribute *attr, char *buf)
return length;
static ssize_t modalias_show (struct device *dev, struct device_attribute *attr,
char *buf)
struct of_device *of;
char *compat;
int cplen;
int length;
of = &to_macio_device (dev)->ofdev;
compat = (char *) get_property (of->node, "compatible", &cplen);
if (!compat) compat = "", cplen = 1;
length = sprintf (buf, "of:N%sT%s", of->node->name, of->node->type);
buf += length;
while (cplen > 0) {
int l;
length += sprintf (buf, "C%s", compat);
buf += length;
l = strlen (compat) + 1;
compat += l;
cplen -= l;
return length;
macio_config_of_attr (name, "%s\n");
macio_config_of_attr (type, "%s\n");
......@@ -46,5 +71,6 @@ struct device_attribute macio_dev_attrs[] = {
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment