Message ID | 20230828-qcom-tcpc-v3-1-e95b7afa34d9@quicinc.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | [v3] usb: typec: qcom: check regulator enable status before disabling it | expand |
On 28.08.2023 07:16, Hui Liu via B4 Relay wrote: > From: Hui Liu <quic_huliu@quicinc.com> > > Check regulator enable status before disabling it to avoid > unbalanced regulator disable warnings. > > Reviewed-by: Guenter Roeck <linux@roeck-us.net> > Fixes: a4422ff22142 ("usb: typec: qcom: Add Qualcomm PMIC Type-C driver") > Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > Acked-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > Signed-off-by: Hui Liu <quic_huliu@quicinc.com> > --- > Changes in v3: > - Take Bryan's proposal to remove enable/disable operation in pdphy > enable and pdphy disable function, then enable regulator in pdphy start > function and disable it in pdphy stop function. The commit message makes no sense now, it should have been updated to reflect what you're doing after the logic had changed. Konrad
On Mon, 28 Aug 2023 at 12:51, Konrad Dybcio <konrad.dybcio@linaro.org> wrote: > > On 28.08.2023 07:16, Hui Liu via B4 Relay wrote: > > From: Hui Liu <quic_huliu@quicinc.com> > > > > Check regulator enable status before disabling it to avoid > > unbalanced regulator disable warnings. > > > > Reviewed-by: Guenter Roeck <linux@roeck-us.net> > > Fixes: a4422ff22142 ("usb: typec: qcom: Add Qualcomm PMIC Type-C driver") > > Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > > Acked-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > > Signed-off-by: Hui Liu <quic_huliu@quicinc.com> > > --- > > Changes in v3: > > - Take Bryan's proposal to remove enable/disable operation in pdphy > > enable and pdphy disable function, then enable regulator in pdphy start > > function and disable it in pdphy stop function. > The commit message makes no sense now, it should have been updated > to reflect what you're doing after the logic had changed. Not to mention that Reviewed-by and Acked-by tags make little sense now, as patch contents were heavily modified.
On 28/08/2023 06:16, Hui Liu via B4 Relay wrote: > From: Hui Liu <quic_huliu@quicinc.com> > > Check regulator enable status before disabling it to avoid > unbalanced regulator disable warnings. > > Reviewed-by: Guenter Roeck <linux@roeck-us.net> > Fixes: a4422ff22142 ("usb: typec: qcom: Add Qualcomm PMIC Type-C driver") > Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > Acked-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > Signed-off-by: Hui Liu <quic_huliu@quicinc.com> You can retain my Reviewed-by and Acked-by here but please spin a v4 with the commit log fixed. Good work, thanks. Tested-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> # rb5 --- bod
diff --git a/drivers/usb/typec/tcpm/qcom/qcom_pmic_typec_pdphy.c b/drivers/usb/typec/tcpm/qcom/qcom_pmic_typec_pdphy.c index bb0b8479d80f..52c81378e36e 100644 --- a/drivers/usb/typec/tcpm/qcom/qcom_pmic_typec_pdphy.c +++ b/drivers/usb/typec/tcpm/qcom/qcom_pmic_typec_pdphy.c @@ -381,10 +381,6 @@ static int qcom_pmic_typec_pdphy_enable(struct pmic_typec_pdphy *pmic_typec_pdph struct device *dev = pmic_typec_pdphy->dev; int ret; - ret = regulator_enable(pmic_typec_pdphy->vdd_pdphy); - if (ret) - return ret; - /* PD 2.0, DR=TYPEC_DEVICE, PR=TYPEC_SINK */ ret = regmap_update_bits(pmic_typec_pdphy->regmap, pmic_typec_pdphy->base + USB_PDPHY_MSG_CONFIG_REG, @@ -422,8 +418,6 @@ static int qcom_pmic_typec_pdphy_disable(struct pmic_typec_pdphy *pmic_typec_pdp ret = regmap_write(pmic_typec_pdphy->regmap, pmic_typec_pdphy->base + USB_PDPHY_EN_CONTROL_REG, 0); - regulator_disable(pmic_typec_pdphy->vdd_pdphy); - return ret; } @@ -447,6 +441,10 @@ int qcom_pmic_typec_pdphy_start(struct pmic_typec_pdphy *pmic_typec_pdphy, int i; int ret; + ret = regulator_enable(pmic_typec_pdphy->vdd_pdphy); + if (ret) + return ret; + pmic_typec_pdphy->tcpm_port = tcpm_port; ret = pmic_typec_pdphy_reset(pmic_typec_pdphy); @@ -467,6 +465,8 @@ void qcom_pmic_typec_pdphy_stop(struct pmic_typec_pdphy *pmic_typec_pdphy) disable_irq(pmic_typec_pdphy->irq_data[i].irq); qcom_pmic_typec_pdphy_reset_on(pmic_typec_pdphy); + + regulator_disable(pmic_typec_pdphy->vdd_pdphy); } struct pmic_typec_pdphy *qcom_pmic_typec_pdphy_alloc(struct device *dev)