diff options
author | Greg Kroah-Hartman <greg@kroah.com> | 2014-12-23 15:16:53 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <greg@kroah.com> | 2014-12-23 21:04:02 -0800 |
commit | fb69cb506c16d38de2c3b62ea4cf6e8728bd4348 (patch) | |
tree | c7e86e2980862d4a235320ad34af7dbb8960f618 /drivers/staging/greybus/connection.h | |
parent | df469a942301c9bf4d939e1139c1a435079b288a (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.h | 5 |
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 */ |