Changes since v2: ----------------- - v2 can be viewed here: https://lore.kernel.org/linux-arm-msm/20220724122424.2509021-1-bhupesh.sharma@xxxxxxxxxx/ - 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@xxxxxxxxxx/ - 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@xxxxxxxxxx Cc: Amit Kucheria <amitk@xxxxxxxxxx> Cc: Thara Gopinath <thara.gopinath@xxxxxxxxx> Cc: linux-pm@xxxxxxxxxxxxxxx Cc: linux-arm-msm@xxxxxxxxxxxxxxx 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(-) -- 2.35.3