Commit e45524f8 authored by Alex Elder's avatar Alex Elder Committed by Greg Kroah-Hartman

greybus: endo: rework some attributes

The SVC is not the same as the Endo.  There are some attributes
(such as the Endo ID) that are independent of attributes of
the SVC (like its version).

The current "Endo attributes" are really SVC attributes.
Rename a few functions and variables to reflect that.

Add a new attribute group for Endo-specific attributes, and
populate it with the Endo ID.
Signed-off-by: default avatarAlex Elder <elder@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parent 8a760437
...@@ -44,35 +44,57 @@ ...@@ -44,35 +44,57 @@
(4 + ((endo_layout)->max_ribs + 1) * 2) (4 + ((endo_layout)->max_ribs + 1) * 2)
/* endo sysfs attributes */ /* endo sysfs attributes */
static ssize_t serial_number_show(struct device *dev, static ssize_t svc_serial_number_show(struct device *dev,
struct device_attribute *attr, char *buf) struct device_attribute *attr, char *buf)
{ {
struct gb_endo *endo = to_gb_endo(dev); struct gb_endo *endo = to_gb_endo(dev);
return sprintf(buf, "%s", &endo->svc_info.serial_number[0]); return sprintf(buf, "%s", &endo->svc_info.serial_number[0]);
} }
static DEVICE_ATTR_RO(serial_number); static DEVICE_ATTR_RO(svc_serial_number);
static ssize_t version_show(struct device *dev, struct device_attribute *attr, static ssize_t svc_version_show(struct device *dev,
char *buf) struct device_attribute *attr, char *buf)
{ {
struct gb_endo *endo = to_gb_endo(dev); struct gb_endo *endo = to_gb_endo(dev);
return sprintf(buf, "%s", &endo->svc_info.version[0]); return sprintf(buf, "%s", &endo->svc_info.version[0]);
} }
static DEVICE_ATTR_RO(version); static DEVICE_ATTR_RO(svc_version);
static struct attribute *svc_attrs[] = {
&dev_attr_svc_serial_number.attr,
&dev_attr_svc_version.attr,
NULL,
};
static const struct attribute_group svc_group = {
.attrs = svc_attrs,
.name = "SVC",
};
static ssize_t endo_id_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
struct gb_endo *endo = to_gb_endo(dev);
return sprintf(buf, "0x%04x", endo->id);
}
static DEVICE_ATTR_RO(endo_id);
static struct attribute *endo_attrs[] = { static struct attribute *endo_attrs[] = {
&dev_attr_serial_number.attr, &dev_attr_endo_id.attr,
&dev_attr_version.attr,
NULL, NULL,
}; };
static const struct attribute_group endo_group = { static const struct attribute_group endo_group = {
.attrs = endo_attrs, .attrs = endo_attrs,
.name = "SVC", .name = "Endo",
}; };
static const struct attribute_group *endo_groups[] = { static const struct attribute_group *endo_groups[] = {
&endo_group, &endo_group,
&svc_group,
NULL, NULL,
}; };
......
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