summaryrefslogtreecommitdiffstats
path: root/drivers/staging/greybus/control.c
diff options
context:
space:
mode:
authorDavid Lin <dtwlin@google.com>2016-07-07 22:07:00 -0500
committerAlex Elder <elder@linaro.org>2016-07-08 14:56:28 -0500
commit707a5c42ce55938de599e4461384efafd6950c37 (patch)
treebb8ee07bbe0ccc21faff33f9fdf7f8644bf42538 /drivers/staging/greybus/control.c
parentcc28c2c2283d5e1b8d2fc0a1cf2bc45783fc7f71 (diff)
downloadop-kernel-dev-707a5c42ce55938de599e4461384efafd6950c37.zip
op-kernel-dev-707a5c42ce55938de599e4461384efafd6950c37.tar.gz
greybus: control: add connection suspend and resume calls
Adds function calls for handling control connection suspend and resume, for now all they do is disable and enable control connection. Signed-off-by: David Lin <dtwlin@google.com> Reviewed-by: Johan Hovold <johan@hovoldconsulting.com> Signed-off-by: Alex Elder <elder@linaro.org>
Diffstat (limited to 'drivers/staging/greybus/control.c')
-rw-r--r--drivers/staging/greybus/control.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/staging/greybus/control.c b/drivers/staging/greybus/control.c
index 55bb465..37a30b3 100644
--- a/drivers/staging/greybus/control.c
+++ b/drivers/staging/greybus/control.c
@@ -546,6 +546,27 @@ void gb_control_disable(struct gb_control *control)
gb_connection_disable(control->connection);
}
+int gb_control_suspend(struct gb_control *control)
+{
+ gb_connection_disable(control->connection);
+
+ return 0;
+}
+
+int gb_control_resume(struct gb_control *control)
+{
+ int ret;
+
+ ret = gb_connection_enable_tx(control->connection);
+ if (ret) {
+ dev_err(&control->connection->intf->dev,
+ "failed to enable control connection: %d\n", ret);
+ return ret;
+ }
+
+ return 0;
+}
+
int gb_control_add(struct gb_control *control)
{
int ret;
OpenPOWER on IntegriCloud