mbox series

[v3,0/4] Add support for tsens controller reinit via trustzone

Message ID 20220804054638.3197294-1-bhupesh.sharma@linaro.org (mailing list archive)
Headers show
Series Add support for tsens controller reinit via trustzone | expand

Message

Bhupesh Sharma Aug. 4, 2022, 5:46 a.m. UTC
Changes since v2:
-----------------
- v2 can be viewed here: https://lore.kernel.org/linux-arm-msm/20220724122424.2509021-1-bhupesh.sharma@linaro.org/
- Dropped sm6375 specific patch from v3, as suggested by Konrad.
- Rebased on latest linux-next (master branch) tip.

Changes since v1:
-----------------
- v1 can be viewed here: https://lore.kernel.org/linux-arm-msm/20220701145815.2037993-1-bhupesh.sharma@linaro.org/
- Addressed several comments from Bjorn regarding locking, serialization
  etc received on v1.
- Addressed Konrad's concerns about the tsens controller found on sm6375
  SoC which seems to start in a bad state or is disabled when entering
  the linux world.
- This series would depend on sm6375 tsens controller changes being
  added by Konrad. It is based on linux-next (master branch) tip.

Some versions of Qualcomm tsens controller might enter a
'bad state' causing sensor temperatures/interrupts status
to be in an 'invalid' state.

It is recommended to re-initialize the tsens controller
via trustzone (secure registers) using scm call(s) when that
happens.

This patchset adds the support for the same.

Cc: bjorn.andersson@linaro.org
Cc: Amit Kucheria <amitk@kernel.org>
Cc: Thara Gopinath <thara.gopinath@gmail.com>
Cc: linux-pm@vger.kernel.org
Cc: linux-arm-msm@vger.kernel.org

Bhupesh Sharma (4):
  firmware: qcom: scm: Add support for tsens reinit workaround
  thermal: qcom: tsens: Add hooks for supplying platform specific reinit
    quirks
  thermal: qcom: tsens: Add driver support for re-initialization quirk
  thermal: qcom: tsens: Add reinit quirk support for tsens v2
    controllers

 drivers/firmware/qcom_scm.c     |  15 +++
 drivers/firmware/qcom_scm.h     |   4 +
 drivers/thermal/qcom/tsens-v2.c |  15 +++
 drivers/thermal/qcom/tsens.c    | 200 ++++++++++++++++++++++++++++++++
 drivers/thermal/qcom/tsens.h    |  18 ++-
 include/linux/qcom_scm.h        |   2 +
 6 files changed, 253 insertions(+), 1 deletion(-)

Comments

Bhupesh Sharma Aug. 25, 2022, 5 a.m. UTC | #1
On 8/4/22 11:16 AM, Bhupesh Sharma wrote:
> Changes since v2:
> -----------------
> - v2 can be viewed here: https://lore.kernel.org/linux-arm-msm/20220724122424.2509021-1-bhupesh.sharma@linaro.org/
> - Dropped sm6375 specific patch from v3, as suggested by Konrad.
> - Rebased on latest linux-next (master branch) tip.
> 
> Changes since v1:
> -----------------
> - v1 can be viewed here: https://lore.kernel.org/linux-arm-msm/20220701145815.2037993-1-bhupesh.sharma@linaro.org/
> - Addressed several comments from Bjorn regarding locking, serialization
>    etc received on v1.
> - Addressed Konrad's concerns about the tsens controller found on sm6375
>    SoC which seems to start in a bad state or is disabled when entering
>    the linux world.
> - This series would depend on sm6375 tsens controller changes being
>    added by Konrad. It is based on linux-next (master branch) tip.
> 
> Some versions of Qualcomm tsens controller might enter a
> 'bad state' causing sensor temperatures/interrupts status
> to be in an 'invalid' state.
> 
> It is recommended to re-initialize the tsens controller
> via trustzone (secure registers) using scm call(s) when that
> happens.
> 
> This patchset adds the support for the same.
> 
> Cc: bjorn.andersson@linaro.org
> Cc: Amit Kucheria <amitk@kernel.org>
> Cc: Thara Gopinath <thara.gopinath@gmail.com>
> Cc: linux-pm@vger.kernel.org
> Cc: linux-arm-msm@vger.kernel.org
> 
> Bhupesh Sharma (4):
>    firmware: qcom: scm: Add support for tsens reinit workaround
>    thermal: qcom: tsens: Add hooks for supplying platform specific reinit
>      quirks
>    thermal: qcom: tsens: Add driver support for re-initialization quirk
>    thermal: qcom: tsens: Add reinit quirk support for tsens v2
>      controllers
> 
>   drivers/firmware/qcom_scm.c     |  15 +++
>   drivers/firmware/qcom_scm.h     |   4 +
>   drivers/thermal/qcom/tsens-v2.c |  15 +++
>   drivers/thermal/qcom/tsens.c    | 200 ++++++++++++++++++++++++++++++++
>   drivers/thermal/qcom/tsens.h    |  18 ++-
>   include/linux/qcom_scm.h        |   2 +
>   6 files changed, 253 insertions(+), 1 deletion(-)
> 

Gentle ping.

Thanks,
Bhupesh