From: Johan Hovold Date: Wed, 25 Nov 2015 14:59:24 +0000 (+0100) Subject: greybus: connection: unconditionally enable connections X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=e1442f6910da337a879e44f32909844986714a4b;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.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 Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/greybus/connection.c b/drivers/staging/greybus/connection.c index 7dde8a11935e..2b0784668547 100644 --- a/drivers/staging/greybus/connection.c +++ b/drivers/staging/greybus/connection.c @@ -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; diff --git a/drivers/staging/greybus/protocol.h b/drivers/staging/greybus/protocol.h index 384ddf8d1600..f24281b39db5 100644 --- a/drivers/staging/greybus/protocol.h +++ b/drivers/staging/greybus/protocol.h @@ -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 *); diff --git a/drivers/staging/greybus/svc.c b/drivers/staging/greybus/svc.c index 42cc7e9a20a4..f9ca08b34cd0 100644 --- a/drivers/staging/greybus/svc.c +++ b/drivers/staging/greybus/svc.c @@ -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);