[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20200504224346.613377-2-bryan.odonoghue@linaro.org>
Date: Mon, 4 May 2020 23:43:45 +0100
From: Bryan O'Donoghue <bryan.odonoghue@...aro.org>
To: Peter.Chen@....com, gregkh@...uxfoundation.org,
linux-usb@...r.kernel.org
Cc: linux-arm-msm@...r.kernel.org,
Bryan O'Donoghue <bryan.odonoghue@...aro.org>,
Philipp Zabel <p.zabel@...gutronix.de>,
linux-kernel@...r.kernel.org, Stephen Boyd <swboyd@...omium.org>
Subject: [PATCH 1/2] usb: chipidea: msm: Ensure proper controller reset using role switch API
Currently we check to make sure there is no error state on the extcon
handle for VBUS when writing to the HS_PHY_GENCONFIG_2 register. When using
the USB role-switch API we still need to write to this register absent an
extcon handle.
This patch makes the appropriate update to ensure the write happens if
role-switching is true.
Fixes: 05559f10ed79 ("usb: chipidea: add role switch class support")
Cc: Peter Chen <Peter.Chen@....com>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: Philipp Zabel <p.zabel@...gutronix.de>
Cc: linux-usb@...r.kernel.org
Cc: linux-kernel@...r.kernel.org
Cc: Stephen Boyd <swboyd@...omium.org>
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@...aro.org>
---
drivers/usb/chipidea/ci_hdrc_msm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c b/drivers/usb/chipidea/ci_hdrc_msm.c
index af648ba6544d..46105457e1ca 100644
--- a/drivers/usb/chipidea/ci_hdrc_msm.c
+++ b/drivers/usb/chipidea/ci_hdrc_msm.c
@@ -114,7 +114,7 @@ static int ci_hdrc_msm_notify_event(struct ci_hdrc *ci, unsigned event)
hw_write_id_reg(ci, HS_PHY_GENCONFIG_2,
HS_PHY_ULPI_TX_PKT_EN_CLR_FIX, 0);
- if (!IS_ERR(ci->platdata->vbus_extcon.edev)) {
+ if (!IS_ERR(ci->platdata->vbus_extcon.edev) || ci->role_switch) {
hw_write_id_reg(ci, HS_PHY_GENCONFIG_2,
HS_PHY_SESS_VLD_CTRL_EN,
HS_PHY_SESS_VLD_CTRL_EN);
--
2.25.1
Powered by blists - more mailing lists