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

8960 family of SoCs have the TSENS device as part of GCC, hence
the driver probes the virtual child device created by GCC and
uses the parent to extract all DT properties and reuses the GCC
regmap.

Also GCC/TSENS are part of a  domain thats not always ON.
Hence add .suspend and .resume hooks to save and restore some of
the inited register context.

Also 8960 family have some of the TSENS init sequence thats
required to be done by the HLOS driver (some later versions of TSENS
do not export these registers to non-secure world, and hence need
these initializations to be done by secure bootloaders)

8660 from the same family has just one sensor and hence some register
offset/layout differences which need special handling in the driver.

Based on the original code from Siddartha Mohanadoss, Stephen Boyd and
Narendran Rajan.

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-8960.c [new file with mode: 0644]
drivers/thermal/qcom/tsens.c
drivers/thermal/qcom/tsens.h