thermal: armada: remove sensors validity from the IP initialization
authorMiquel Raynal <miquel.raynal@bootlin.com>
Mon, 16 Jul 2018 14:41:53 +0000 (16:41 +0200)
committerEduardo Valentin <edubezval@gmail.com>
Fri, 27 Jul 2018 21:43:10 +0000 (14:43 -0700)
When using new bindings with multiple sensors, sensor validity is
checked twice because sensor selection also checks for the validity.

Remove the redundant call from the IP initialization helper and move it
to the legacy probe section where it is still needed.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
drivers/thermal/armada_thermal.c

index e20d4f954f2182a9d5f9bb349d491e905cf5d0ae..1f6bc317748d0ae66ffcb72360d408c2d86ec28e 100644 (file)
@@ -222,9 +222,6 @@ static void armada380_init(struct platform_device *pdev,
        reg &= ~CONTROL0_TSEN_TC_TRIM_MASK;
        reg |= CONTROL0_TSEN_TC_TRIM_VAL;
        regmap_write(priv->syscon, data->syscon_control0_off, reg);
-
-       /* Wait the sensors to be valid or the core will warn the user */
-       armada_wait_sensor_validity(priv);
 }
 
 static void armada_ap806_init(struct platform_device *pdev,
@@ -244,9 +241,6 @@ static void armada_ap806_init(struct platform_device *pdev,
        reg &= ~CONTROL0_TSEN_AVG_BYPASS;
 
        regmap_write(priv->syscon, data->syscon_control0_off, reg);
-
-       /* Wait the sensors to be valid or the core will warn the user */
-       armada_wait_sensor_validity(priv);
 }
 
 static void armada_cp110_init(struct platform_device *pdev,
@@ -652,6 +646,9 @@ static int armada_thermal_probe(struct platform_device *pdev)
 
                priv->data->init(pdev, priv);
 
+               /* Wait the sensors to be valid */
+               armada_wait_sensor_validity(priv);
+
                tz = thermal_zone_device_register(priv->zone_name, 0, 0, priv,
                                                  &legacy_ops, NULL, 0, 0);
                if (IS_ERR(tz)) {