Commit e1442f69 authored by Johan Hovold's avatar Johan Hovold Committed by Greg Kroah-Hartman

greybus: connection: unconditionally enable connections

Remove conditional enabling of connections when binding protocols that
served no purpose as a connection either has no bundle or it has an
interface with a valid device id.

Also remove the now unused GB_PROTOCOL_NO_BUNDLE protocol flag.

This is an intermediate step in moving the protocol binding to
connection_init, but is also needed as the control bundle is going away.
Signed-off-by: default avatarJohan Hovold <johan@hovoldconsulting.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parent 7fa530ad
...@@ -541,19 +541,11 @@ int gb_connection_bind_protocol(struct gb_connection *connection) ...@@ -541,19 +541,11 @@ int gb_connection_bind_protocol(struct gb_connection *connection)
} }
connection->protocol = protocol; connection->protocol = protocol;
/* ret = gb_connection_init(connection);
* If we have a valid device_id for the interface block, then we have an if (ret) {
* active device, so bring up the connection at the same time. gb_protocol_put(protocol);
*/ connection->protocol = NULL;
if ((!connection->bundle && return ret;
protocol->flags & GB_PROTOCOL_NO_BUNDLE) ||
connection->bundle->intf->device_id != GB_DEVICE_ID_BAD) {
ret = gb_connection_init(connection);
if (ret) {
gb_protocol_put(protocol);
connection->protocol = NULL;
return ret;
}
} }
return 0; return 0;
......
...@@ -16,7 +16,6 @@ struct gb_operation; ...@@ -16,7 +16,6 @@ struct gb_operation;
/* Possible flags for protocol drivers */ /* Possible flags for protocol drivers */
#define GB_PROTOCOL_SKIP_CONTROL_CONNECTED BIT(0) /* Don't sent connected requests */ #define GB_PROTOCOL_SKIP_CONTROL_CONNECTED BIT(0) /* Don't sent connected requests */
#define GB_PROTOCOL_SKIP_CONTROL_DISCONNECTED BIT(1) /* Don't sent disconnected requests */ #define GB_PROTOCOL_SKIP_CONTROL_DISCONNECTED BIT(1) /* Don't sent disconnected requests */
#define GB_PROTOCOL_NO_BUNDLE BIT(2) /* Protocol May have a bundle-less connection */
#define GB_PROTOCOL_SKIP_VERSION BIT(3) /* Don't send get_version() requests */ #define GB_PROTOCOL_SKIP_VERSION BIT(3) /* Don't send get_version() requests */
typedef int (*gb_connection_init_t)(struct gb_connection *); typedef int (*gb_connection_init_t)(struct gb_connection *);
......
...@@ -678,7 +678,6 @@ static struct gb_protocol svc_protocol = { ...@@ -678,7 +678,6 @@ static struct gb_protocol svc_protocol = {
.request_recv = gb_svc_request_recv, .request_recv = gb_svc_request_recv,
.flags = GB_PROTOCOL_SKIP_CONTROL_CONNECTED | .flags = GB_PROTOCOL_SKIP_CONTROL_CONNECTED |
GB_PROTOCOL_SKIP_CONTROL_DISCONNECTED | GB_PROTOCOL_SKIP_CONTROL_DISCONNECTED |
GB_PROTOCOL_NO_BUNDLE |
GB_PROTOCOL_SKIP_VERSION, GB_PROTOCOL_SKIP_VERSION,
}; };
gb_builtin_protocol_driver(svc_protocol); gb_builtin_protocol_driver(svc_protocol);
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment