mirror of https://gitee.com/openkylin/linux.git
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: Johan Hovold <johan@hovoldconsulting.com> Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
parent
7fa530ad1b
commit
e1442f6910
|
@ -541,19 +541,11 @@ int gb_connection_bind_protocol(struct gb_connection *connection)
|
|||
}
|
||||
connection->protocol = protocol;
|
||||
|
||||
/*
|
||||
* If we have a valid device_id for the interface block, then we have an
|
||||
* active device, so bring up the connection at the same time.
|
||||
*/
|
||||
if ((!connection->bundle &&
|
||||
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;
|
||||
}
|
||||
ret = gb_connection_init(connection);
|
||||
if (ret) {
|
||||
gb_protocol_put(protocol);
|
||||
connection->protocol = NULL;
|
||||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -16,7 +16,6 @@ struct gb_operation;
|
|||
/* Possible flags for protocol drivers */
|
||||
#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_NO_BUNDLE BIT(2) /* Protocol May have a bundle-less connection */
|
||||
#define GB_PROTOCOL_SKIP_VERSION BIT(3) /* Don't send get_version() requests */
|
||||
|
||||
typedef int (*gb_connection_init_t)(struct gb_connection *);
|
||||
|
|
|
@ -678,7 +678,6 @@ static struct gb_protocol svc_protocol = {
|
|||
.request_recv = gb_svc_request_recv,
|
||||
.flags = GB_PROTOCOL_SKIP_CONTROL_CONNECTED |
|
||||
GB_PROTOCOL_SKIP_CONTROL_DISCONNECTED |
|
||||
GB_PROTOCOL_NO_BUNDLE |
|
||||
GB_PROTOCOL_SKIP_VERSION,
|
||||
};
|
||||
gb_builtin_protocol_driver(svc_protocol);
|
||||
|
|
Loading…
Reference in New Issue