From c92c1d026b1e13f20fee3350975a4986608ff84a Mon Sep 17 00:00:00 2001 From: Viresh Kumar Date: Mon, 30 May 2016 13:05:08 +0530 Subject: [PATCH] greybus: fw-mgmt: Add hooks to do mode-switch 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 Tested-by: Karthik Ravi Shankar Signed-off-by: Greg Kroah-Hartman --- drivers/staging/greybus/fw-management.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/staging/greybus/fw-management.c b/drivers/staging/greybus/fw-management.c index da36de313a2c..22dcad2ebc15 100644 --- a/drivers/staging/greybus/fw-management.c +++ b/drivers/staging/greybus/fw-management.c @@ -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;