thermal: qcom: tsens-8996: Add support for 8996 family of SoCs
authorRajendra Nayak <rnayak@codeaurora.org>
Thu, 5 May 2016 08:51:44 +0000 (14:21 +0530)
committerZhang Rui <rui.zhang@intel.com>
Tue, 27 Sep 2016 06:02:16 +0000 (14:02 +0800)
commitd059c739aacfbd00606f1b120ceaadb79f05c7e0
tree26c11dd7cfa505002dae03f39c7b2d09e5a66787
parent20d4fd84bf524ad91e2cc3e4ab4020c27cfc0081
thermal: qcom: tsens-8996: Add support for 8996 family of SoCs

The TSENS controller in 8996 family of SoCs is capable of converting the
ADC code outputs to real temperature values (in decidegree Celsius).
It can also be programmed to provide raw ADC code, but the secure software
on 8996 programs it to provide real temperatures and also does the needed
calibrations.

We check the valid bit to ensure valid data is read by the AHB master.
And the spec recommends the below algorithm to read data 3 consecutive
times, which takes care of the worst case delay taken to propagate the
updated data to the register.

Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
drivers/thermal/qcom/Makefile
drivers/thermal/qcom/tsens-8996.c [new file with mode: 0644]
drivers/thermal/qcom/tsens.c
drivers/thermal/qcom/tsens.h