thermal: armada: remove useless register accesses
authorMiquel Raynal <miquel.raynal@bootlin.com>
Mon, 16 Jul 2018 14:41:45 +0000 (16:41 +0200)
committerEduardo Valentin <edubezval@gmail.com>
Fri, 27 Jul 2018 21:43:03 +0000 (14:43 -0700)
Prepare the migration to use regmaps by first simplifying the
initialization functions: avoid unnecessary write/read cycles on
configuration registers.

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

index 4c88d70f09e53059cb06d0876efb7a87afd5ff46..de1d1c6b19758d334d63a9f7d537d6df774b11c3 100644 (file)
@@ -103,16 +103,13 @@ static void armadaxp_init_sensor(struct platform_device *pdev,
 
        reg = readl_relaxed(priv->control1);
        reg |= PMU_TDC0_OTF_CAL_MASK;
-       writel(reg, priv->control1);
 
        /* Reference calibration value */
        reg &= ~PMU_TDC0_REF_CAL_CNT_MASK;
        reg |= (0xf1 << PMU_TDC0_REF_CAL_CNT_OFFS);
-       writel(reg, priv->control1);
 
        /* Reset the sensor */
-       reg = readl_relaxed(priv->control1);
-       writel((reg | PMU_TDC0_SW_RST_MASK), priv->control1);
+       reg |= PMU_TDC0_SW_RST_MASK;
 
        writel(reg, priv->control1);
 
@@ -129,14 +126,13 @@ static void armada370_init_sensor(struct platform_device *pdev,
 
        reg = readl_relaxed(priv->control1);
        reg |= PMU_TDC0_OTF_CAL_MASK;
-       writel(reg, priv->control1);
 
        /* Reference calibration value */
        reg &= ~PMU_TDC0_REF_CAL_CNT_MASK;
        reg |= (0xf1 << PMU_TDC0_REF_CAL_CNT_OFFS);
-       writel(reg, priv->control1);
 
        reg &= ~PMU_TDC0_START_CAL_MASK;
+
        writel(reg, priv->control1);
 
        msleep(10);