Hello. On 19-05-2014 10:18, Li Jun wrote:
From: Li Jun <b47624@xxxxxxxxxxxxx>
This patch sets host request flag in sys input when a A device set a_bus_req or a B device set b_bus_req in peripheral role.
Signed-off-by: Li Jun <b47624@xxxxxxxxxxxxx> --- drivers/usb/chipidea/otg_fsm.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/chipidea/otg_fsm.c b/drivers/usb/chipidea/otg_fsm.c index 923b789..41faffa 100644 --- a/drivers/usb/chipidea/otg_fsm.c +++ b/drivers/usb/chipidea/otg_fsm.c
[...]
@@ -162,8 +167,14 @@ set_b_bus_req(struct device *dev, struct device_attribute *attr, mutex_lock(&ci->fsm.lock); if (buf[0] == '0') ci->fsm.b_bus_req = 0; - else if (buf[0] == '1') + else if (buf[0] == '1') {
{} should be used on both arms of the *if* statement since it's used on one arm, according to Documentation/CodingStyle. Though actually, a *switch* statement is asking to be here...
ci->fsm.b_bus_req = 1; + if (ci->transceiver->state == OTG_STATE_B_PERIPHERAL) { + ci->gadget.host_request_flag = 1; + mutex_unlock(&ci->fsm.lock); + return count; + } + }
WBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html