summaryrefslogtreecommitdiffstats
path: root/drivers/staging/greybus/connection.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <greg@kroah.com>2014-12-23 15:16:53 -0800
committerGreg Kroah-Hartman <greg@kroah.com>2014-12-23 21:04:02 -0800
commitfb69cb506c16d38de2c3b62ea4cf6e8728bd4348 (patch)
treec7e86e2980862d4a235320ad34af7dbb8960f618 /drivers/staging/greybus/connection.h
parentdf469a942301c9bf4d939e1139c1a435079b288a (diff)
greybus: protocol: split binding of prototcols to connections out of init
When adding a new protocol to the system, walk all bundles and try to hook up any connections that do not have a protocol already. This sets the stage to allow for protocols to be loaded at any time, not just before the device is seen in the system. Reviewed-by: Alex Elder <elder@linaro.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
Diffstat (limited to 'drivers/staging/greybus/connection.h')
-rw-r--r--drivers/staging/greybus/connection.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/staging/greybus/connection.h b/drivers/staging/greybus/connection.h
index caf52b8ef676..b07df79f9d86 100644
--- a/drivers/staging/greybus/connection.h
+++ b/drivers/staging/greybus/connection.h
@@ -33,6 +33,9 @@ struct gb_connection {
struct list_head bundle_links;
struct gb_protocol *protocol;
+ u8 protocol_id;
+ u8 major;
+ u8 minor;
enum gb_connection_state state;
@@ -58,4 +61,6 @@ void greybus_data_rcvd(struct greybus_host_device *hd, u16 cport_id,
__printf(2, 3)
void gb_connection_err(struct gb_connection *connection, const char *fmt, ...);
+void gb_connection_bind_protocol(struct gb_connection *connection);
+
#endif /* __CONNECTION_H */