greybus: connection: add name field
Add a name field to connections that can be used in log messages. A connection always belongs to a host-device (bus) and can be uniquely identified by its host-device cport id, but include remote interface and cport id nonetheless on the following format: <hd_cport_id>/<intf_id>:<cport_id> The remote interface and cport id will be zero for static connections. Signed-off-by: Johan Hovold <johan@hovoldconsulting.com> Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
parent
4ec1574ae9
commit
729b260a67
|
@ -95,6 +95,21 @@ int svc_update_connection(struct gb_interface *intf,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void gb_connection_init_name(struct gb_connection *connection)
|
||||
{
|
||||
u16 hd_cport_id = connection->hd_cport_id;
|
||||
u16 cport_id = 0;
|
||||
u8 intf_id = 0;
|
||||
|
||||
if (connection->intf) {
|
||||
intf_id = connection->intf->interface_id;
|
||||
cport_id = connection->intf_cport_id;
|
||||
}
|
||||
|
||||
snprintf(connection->name, sizeof(connection->name),
|
||||
"%hu/%hhu:%hu", hd_cport_id, intf_id, cport_id);
|
||||
}
|
||||
|
||||
/*
|
||||
* gb_connection_create() - create a Greybus connection
|
||||
* @hd: host device of the connection
|
||||
|
@ -179,6 +194,8 @@ gb_connection_create(struct gb_host_device *hd, int hd_cport_id,
|
|||
|
||||
kref_init(&connection->kref);
|
||||
|
||||
gb_connection_init_name(connection);
|
||||
|
||||
spin_lock_irq(&gb_connections_lock);
|
||||
list_add(&connection->hd_links, &hd->connections);
|
||||
|
||||
|
|
|
@ -43,6 +43,7 @@ struct gb_connection {
|
|||
enum gb_connection_state state;
|
||||
struct list_head operations;
|
||||
|
||||
char name[16];
|
||||
struct workqueue_struct *wq;
|
||||
|
||||
atomic_t op_cycle;
|
||||
|
|
Loading…
Reference in New Issue