]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
thermal/drivers/qcom/tsens-v0_1: Fix mdm9607 slope values
authorStephan Gerhold <stephan.gerhold@kernkonzept.com>
Wed, 7 Jun 2023 10:47:45 +0000 (12:47 +0200)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Mon, 26 Jun 2023 10:03:13 +0000 (12:03 +0200)
According to the msm-3.18 vendor kernel from Qualcomm [1], mdm9607 uses
a non-standard slope value of 3000 (instead of 3200) for all sensors.
Fill it properly similar to the 8939 code added recently.

[1]: https://git.codelinaro.org/clo/la/kernel/msm-3.18/-/blob/LE.UM.4.3.2.r1-04200-9x07/arch/arm/boot/dts/qcom/mdm9607.dtsi#L875

Fixes: a2149ab815fc ("thermal/drivers/qcom/tsens-v0_1: Add support for MDM9607")
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Stephan Gerhold <stephan.gerhold@kernkonzept.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20230508-msm8909-tsens-v5-2-5eb632235ba7@kernkonzept.com
drivers/thermal/qcom/tsens-v0_1.c

index a65f58264122392cd84ad78a2f3179592e89ea51..9802ae1d4fcf89802e1375aad04602d14c2e5ae2 100644 (file)
@@ -234,6 +234,16 @@ static int __init init_8939(struct tsens_priv *priv) {
        return init_common(priv);
 }
 
+static int __init init_9607(struct tsens_priv *priv)
+{
+       int i;
+
+       for (i = 0; i < priv->num_sensors; ++i)
+               priv->sensor[i].slope = 3000;
+
+       return init_common(priv);
+}
+
 /* v0.1: 8226, 8916, 8939, 8974, 9607 */
 
 static struct tsens_features tsens_v0_1_feat = {
@@ -345,9 +355,15 @@ struct tsens_plat_data data_8974 = {
        .fields = tsens_v0_1_regfields,
 };
 
+static const struct tsens_ops ops_9607 = {
+       .init           = init_9607,
+       .calibrate      = tsens_calibrate_common,
+       .get_temp       = get_temp_common,
+};
+
 struct tsens_plat_data data_9607 = {
        .num_sensors    = 5,
-       .ops            = &ops_v0_1,
+       .ops            = &ops_9607,
        .feat           = &tsens_v0_1_feat,
        .fields = tsens_v0_1_regfields,
 };