x86/platform/uv: Add sysfs leaves to replace those in procfs
authorMike Travis <mike.travis@hpe.com>
Sat, 28 Nov 2020 03:42:24 +0000 (21:42 -0600)
committerBorislav Petkov <bp@suse.de>
Mon, 7 Dec 2020 18:49:01 +0000 (19:49 +0100)
Add uv_sysfs leaves to display the info.

Signed-off-by: Mike Travis <mike.travis@hpe.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Steve Wahl <steve.wahl@hpe.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lkml.kernel.org/r/20201128034227.120869-3-mike.travis@hpe.com
drivers/platform/x86/uv_sysfs.c

index c27f5ffd43bb2d1e70d58350ecd530498404349e..922d32fb580a837f0f438e1416667c525ed8c391 100644 (file)
@@ -736,17 +736,35 @@ static ssize_t uv_type_show(struct kobject *kobj,
        return scnprintf(buf, PAGE_SIZE, "%s\n", uv_type_string());
 }
 
+static ssize_t uv_archtype_show(struct kobject *kobj,
+                       struct kobj_attribute *attr, char *buf)
+{
+       return uv_get_archtype(buf, PAGE_SIZE);
+}
+
+static ssize_t uv_hub_type_show(struct kobject *kobj,
+                       struct kobj_attribute *attr, char *buf)
+{
+       return scnprintf(buf, PAGE_SIZE, "0x%x\n", uv_hub_type());
+}
+
 static struct kobj_attribute partition_id_attr =
        __ATTR(partition_id, 0444, partition_id_show, NULL);
 static struct kobj_attribute coherence_id_attr =
        __ATTR(coherence_id, 0444, coherence_id_show, NULL);
 static struct kobj_attribute uv_type_attr =
        __ATTR(uv_type, 0444, uv_type_show, NULL);
+static struct kobj_attribute uv_archtype_attr =
+       __ATTR(archtype, 0444, uv_archtype_show, NULL);
+static struct kobj_attribute uv_hub_type_attr =
+       __ATTR(hub_type, 0444, uv_hub_type_show, NULL);
 
 static struct attribute *base_attrs[] = {
        &partition_id_attr.attr,
        &coherence_id_attr.attr,
        &uv_type_attr.attr,
+       &uv_archtype_attr.attr,
+       &uv_hub_type_attr.attr,
        NULL,
 };