From 3b05d8508f82fc18fe7ef0618671c0603c490c0d Mon Sep 17 00:00:00 2001 From: Johan Hovold Date: Wed, 11 May 2016 10:18:05 +0200 Subject: [PATCH] greybus: connection: add camera-data connected workaround Firmware currently lacks a representation of the offloaded CDSI connections and connected requests sent for these ports therefore fails. Add a temporary work-around until this has been resolved in firmware. Signed-off-by: Johan Hovold Reviewed-by: Viresh Kumar Reviewed-by: Laurent Pinchart Signed-off-by: Greg Kroah-Hartman --- drivers/staging/greybus/connection.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/staging/greybus/connection.c b/drivers/staging/greybus/connection.c index 395a9df..f803d40 100644 --- a/drivers/staging/greybus/connection.c +++ b/drivers/staging/greybus/connection.c @@ -402,6 +402,16 @@ static int gb_connection_control_connected(struct gb_connection *connection) if (gb_connection_is_static(connection)) return 0; + /* + * HACK: Suppress connected request for the offloaded camera + * connection as it is currently not supported by firmware. Note that + * the corresponding non-fatal disconnected event is still sent. + */ + if (gb_connection_is_offloaded(connection) && + connection->flags & GB_CONNECTION_FLAG_CDSI1) { + return 0; + } + control = connection->intf->control; if (connection == control->connection) -- 2.7.4