summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRam Prakash Gupta <rampraka@codeaurora.org>2018-07-23 12:02:51 +0530
committerRam Prakash Gupta <rampraka@codeaurora.org>2018-07-24 17:50:36 +0530
commit24e44f04e9588864f7caefe9676b109f7dd55921 (patch)
treefbb815cf09b41ebc498edd23a403e2526a0d7d1d
parent595eeed39838e4f975fc1329e500694d8e4b83ea (diff)
ARM: dts: msm: add dt entry to control scaling based on temperature
At lower temperatures (<-40degree), SDHC DLL is failing to lock on RadagastAU target which is leading to CRC issues with SD card in SDR104 mode. As workaround to this hardware issue, software is avoiding running SD card in SDR104 mode at lower temperatures. Adding dt entries to sdhci node for getting temperature sensor ids and threshold values for supporting temperature based clock scaling. Change-Id: I1b3877ba47090a6f9cd3321bfc5e97fd3de99372 Signed-off-by: Ram Prakash Gupta <rampraka@codeaurora.org>
-rw-r--r--Documentation/devicetree/bindings/mmc/sdhci-msm.txt12
-rw-r--r--arch/arm/boot/dts/qcom/msm8996pro-auto-adp.dts9
2 files changed, 21 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/mmc/sdhci-msm.txt b/Documentation/devicetree/bindings/mmc/sdhci-msm.txt
index 9916c34e62b8..380e8453b4ce 100644
--- a/Documentation/devicetree/bindings/mmc/sdhci-msm.txt
+++ b/Documentation/devicetree/bindings/mmc/sdhci-msm.txt
@@ -113,6 +113,18 @@ In the following, <supply> can be vdd (flash core voltage) or vdd-io (I/O voltag
- qcom,wakeup-on-idle: if configured, the mmcqd thread will call
set_wake_up_idle(), thereby voting for it to be called on idle CPUs.
+ - qcom,late-sdhci-msm: if configured, the sdhci probe will be called in
+ late_init() call context and probe will be delayed.
+
+ - qcom,tsens-id: temperature sensor id which is closest to SDC host controller.
+
+ - qcom,disable_scaling_threshold_temp: temperature value at which scaling is
+ disabled if the temperature falls below this temperature.
+
+ - qcom,enable_scaling_threshold_temp: temperature value at which scaling is
+ enabled, when the scaling is disabled, if temperature rises above this
+ temperature.
+
Example:
aliases {
diff --git a/arch/arm/boot/dts/qcom/msm8996pro-auto-adp.dts b/arch/arm/boot/dts/qcom/msm8996pro-auto-adp.dts
index 05a3144fb312..cb7bc50a17a6 100644
--- a/arch/arm/boot/dts/qcom/msm8996pro-auto-adp.dts
+++ b/arch/arm/boot/dts/qcom/msm8996pro-auto-adp.dts
@@ -69,11 +69,20 @@
};
};
+&sdhc_1 {
+ qcom,tsens-id = <0>;
+};
+
&sdhc_2 {
+ compatible = "qcom,late-sdhci-msm";
+
cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>;
pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on_sbc>;
pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off
&sdc2_cd_on_sbc>;
+ qcom,tsens-id = <10>;
+ qcom,disable_scaling_threshold_temp = <(-15)>;
+ qcom,enable_scaling_threshold_temp = <(-5)>;
};
&i2c_7 {