]> git.karo-electronics.de Git - linux-beck.git/commitdiff
greybus: fw-mgmt: Add hooks to do mode-switch
authorViresh Kumar <viresh.kumar@linaro.org>
Mon, 30 May 2016 07:35:08 +0000 (13:05 +0530)
committerGreg Kroah-Hartman <gregkh@google.com>
Thu, 2 Jun 2016 18:15:49 +0000 (11:15 -0700)
This is the last step to required to finish the mode switch story.  That
is, call the hook provided by Interface layer to accomplish mode switch.

Tested on EVT 1.5 with gpbridge-test module.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Tested-by: Karthik Ravi Shankar <karthikrs@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/fw-management.c

index da36de313a2c93ea6542cb74a376f7e10686d30c..22dcad2ebc15470f671bd030dda75edc4e16d2a9 100644 (file)
@@ -484,7 +484,14 @@ static int fw_mgmt_ioctl(struct fw_mgmt *fw_mgmt, unsigned int cmd,
 
                fw_mgmt->mode_switch_started = true;
 
-               /* FIXME: Initiate mode-switch from here */
+               ret = gb_interface_request_mode_switch(fw_mgmt->connection->intf);
+               if (ret) {
+                       dev_err(fw_mgmt->parent, "Mode-switch failed: %d\n",
+                               ret);
+                       fw_mgmt->mode_switch_started = false;
+                       return ret;
+               }
+
                return 0;
        default:
                return -ENOTTY;