]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
thermal: broadcom: Use thermal_zone_get_crit_temp() in bcm2835_thermal_probe()
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 29 Jul 2024 15:53:59 +0000 (17:53 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 2 Aug 2024 11:32:09 +0000 (13:32 +0200)
Modify the bcm2835 thermal driver to use thermal_zone_get_crit_temp() in
bcm2835_thermal_probe() instead of relying on the assumption that the
critical trip index will always be 0.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Link: https://patch.msgid.link/3322893.aeNJFYEL58@rjwysocki.net
drivers/thermal/broadcom/bcm2835_thermal.c

index 5ad87eb3f5781722ffd1f996b4252245f6bc10b1..7d61493082b5a0db0debd509c9aa3e5c8abbd673 100644 (file)
@@ -208,8 +208,7 @@ static int bcm2835_thermal_probe(struct platform_device *pdev)
         */
        val = readl(data->regs + BCM2835_TS_TSENSCTL);
        if (!(val & BCM2835_TS_TSENSCTL_RSTB)) {
-               struct thermal_trip trip;
-               int offset, slope;
+               int offset, slope, crit_temp;
 
                slope = thermal_zone_get_slope(tz);
                offset = thermal_zone_get_offset(tz);
@@ -217,7 +216,7 @@ static int bcm2835_thermal_probe(struct platform_device *pdev)
                 * For now we deal only with critical, otherwise
                 * would need to iterate
                 */
-               err = thermal_zone_get_trip(tz, 0, &trip);
+               err = thermal_zone_get_crit_temp(tz, &crit_temp);
                if (err < 0) {
                        dev_err(dev, "Not able to read trip_temp: %d\n", err);
                        return err;
@@ -232,7 +231,7 @@ static int bcm2835_thermal_probe(struct platform_device *pdev)
                val |= (0xFE << BCM2835_TS_TSENSCTL_RSTDELAY_SHIFT);
 
                /*  trip_adc value from info */
-               val |= bcm2835_thermal_temp2adc(trip.temperature,
+               val |= bcm2835_thermal_temp2adc(crit_temp,
                                                offset,
                                                slope)
                        << BCM2835_TS_TSENSCTL_THOLD_SHIFT;