lkml.org 
[lkml]   [2019]   [Jul]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [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
    >

    \
     
     \ /
      Last update: 2019-07-01 17:54    [W:2.270 / U:0.052 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site