From c7840750267a4ebef5f88f0047d155d0e2512394 Mon Sep 17 00:00:00 2001
From: Florian Pose <fp@igh-essen.com>
Date: Tue, 11 Apr 2006 12:51:20 +0000
Subject: [PATCH] Slave (special) type in SysFS

---
 master/slave.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/master/slave.c b/master/slave.c
index 82a56a81..9c328918 100644
--- a/master/slave.c
+++ b/master/slave.c
@@ -33,6 +33,7 @@ EC_SYSFS_READ_ATTR(station_address);
 EC_SYSFS_READ_ATTR(vendor_name);
 EC_SYSFS_READ_ATTR(product_name);
 EC_SYSFS_READ_ATTR(product_desc);
+EC_SYSFS_READ_ATTR(type);
 
 static struct attribute *def_attrs[] = {
     &attr_ring_position,
@@ -40,6 +41,7 @@ static struct attribute *def_attrs[] = {
     &attr_vendor_name,
     &attr_product_name,
     &attr_product_desc,
+    &attr_type,
     NULL,
 };
 
@@ -1224,6 +1226,14 @@ ssize_t ec_show_slave_attribute(struct kobject *kobj, /**< KObject */
         if (slave->type)
             return sprintf(buffer, "%s\n", slave->type->description);
     }
+    else if (attr == &attr_type) {
+        if (slave->type) {
+            if (slave->type->special == EC_TYPE_BUS_COUPLER)
+                return sprintf(buffer, "coupler\n");
+            else
+                return sprintf(buffer, "normal\n");
+        }
+    }
 
     return 0;
 }
-- 
GitLab