Commit bc5f96a1 authored by Christian Gromm's avatar Christian Gromm Committed by Greg Kroah-Hartman
Browse files

staging: most: core: show all linked channels



This patch is needed to have all linked channels being reported by the
show() function of the attribute file add_link. Currently user space can
only read back the latest link that has been established to a certain
channel.

Signed-off-by: default avatarAndrey Shvetsov <andrey.shvetsov@k2l.de>
Signed-off-by: default avatarChristian Gromm <christian.gromm@microchip.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 25b80dbe
Loading
Loading
Loading
Loading
+17 −1
Original line number Diff line number Diff line
@@ -848,7 +848,23 @@ static ssize_t show_add_link(struct most_aim_obj *aim_obj,
			     struct most_aim_attribute *attr,
			     char *buf)
{
	return snprintf(buf, PAGE_SIZE, "%s\n", aim_obj->add_link);
	struct most_c_obj *c;
	struct most_inst_obj *i;
	int offs = 0;

	list_for_each_entry(i, &instance_list, list) {
		list_for_each_entry(c, &i->channel_list, list) {
			if (c->aim0.ptr == aim_obj->driver ||
			    c->aim1.ptr == aim_obj->driver) {
				offs += snprintf(buf + offs, PAGE_SIZE - offs,
						 "%s:%s\n",
						 kobject_name(&i->kobj),
						 kobject_name(&c->kobj));
			}
		}
	}

	return offs;
}

/**