Messages in this thread | | | Date | Mon, 1 Jul 2019 09:53:49 -0600 | From | Lina Iyer <> | Subject | Re: [PATCH 2/2] drivers: qcom: rpmh-rsc: fix read back of trigger register |
| |
Switching Andy's email address.
On Mon, Jul 01 2019 at 09:32 -0600, Lina Iyer wrote: >When triggering a TCS to send its contents, reading back the trigger >value may return an incorrect value. That is because, writing the >trigger may raise an interrupt which could be handled immediately and >the trigger value could be reset in the interrupt handler. By doing a >read back we may end up spinning waiting for the value we wrote. > >Fixes: 658628 ("drivers: qcom: rpmh-rsc: add RPMH controller for QCOM >SoCs") >Signed-off-by: Lina Iyer <ilina@codeaurora.org> >--- > drivers/soc/qcom/rpmh-rsc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/drivers/soc/qcom/rpmh-rsc.c b/drivers/soc/qcom/rpmh-rsc.c >index 92461311aef3..2fc2fa879480 100644 >--- a/drivers/soc/qcom/rpmh-rsc.c >+++ b/drivers/soc/qcom/rpmh-rsc.c >@@ -300,7 +300,7 @@ static void __tcs_trigger(struct rsc_drv *drv, int tcs_id) > enable = TCS_AMC_MODE_ENABLE; > write_tcs_reg_sync(drv, RSC_DRV_CONTROL, tcs_id, enable); > enable |= TCS_AMC_MODE_TRIGGER; >- write_tcs_reg_sync(drv, RSC_DRV_CONTROL, tcs_id, enable); >+ write_tcs_reg(drv, RSC_DRV_CONTROL, tcs_id, enable); > } > > static int check_for_req_inflight(struct rsc_drv *drv, struct tcs_group *tcs, >-- >The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, >a Linux Foundation Collaborative Project >
| |