thermal: core: Add function for registering tripless thermal zones
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 30 Aug 2023 16:13:35 +0000 (18:13 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 5 Sep 2023 19:42:18 +0000 (21:42 +0200)
Multiple callers of thermal_zone_device_register() don't pass any trips
to it and they might use a shortened argument list for that, so add
a special function with fewer arguments for this purpose.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/thermal/thermal_core.c
include/linux/thermal.h

index 0bdde1ab5d8b8a7038b1ea2a297e84d40895ffb6..33ebec043800c0aee244be225221710497fb5866 100644 (file)
@@ -1400,6 +1400,17 @@ struct thermal_zone_device *thermal_zone_device_register(const char *type, int n
 }
 EXPORT_SYMBOL_GPL(thermal_zone_device_register);
 
+struct thermal_zone_device *thermal_tripless_zone_device_register(
+                                       const char *type,
+                                       void *devdata,
+                                       struct thermal_zone_device_ops *ops,
+                                       const struct thermal_zone_params *tzp)
+{
+       return thermal_zone_device_register_with_trips(type, NULL, 0, 0, devdata,
+                                                      ops, tzp, 0, 0);
+}
+EXPORT_SYMBOL_GPL(thermal_tripless_zone_device_register);
+
 void *thermal_zone_device_priv(struct thermal_zone_device *tzd)
 {
        return tzd->devdata;
index a30643104f3ff14f0044a12122820e725333a486..1a1433eb9b59659a498145af86f1d8a7788382e8 100644 (file)
@@ -317,6 +317,12 @@ struct thermal_zone_device *thermal_zone_device_register_with_trips(
                                        const struct thermal_zone_params *tzp,
                                        int passive_delay, int polling_delay);
 
+struct thermal_zone_device *thermal_tripless_zone_device_register(
+                                       const char *type,
+                                       void *devdata,
+                                       struct thermal_zone_device_ops *ops,
+                                       const struct thermal_zone_params *tzp);
+
 void thermal_zone_device_unregister(struct thermal_zone_device *tz);
 
 void *thermal_zone_device_priv(struct thermal_zone_device *tzd);
@@ -377,6 +383,13 @@ static inline struct thermal_zone_device *thermal_zone_device_register_with_trip
                                        int passive_delay, int polling_delay)
 { return ERR_PTR(-ENODEV); }
 
+static inline struct thermal_zone_device *thermal_tripless_zone_device_register(
+                                       const char *type,
+                                       void *devdata,
+                                       struct thermal_zone_device_ops *ops,
+                                       const struct thermal_zone_params *tzp)
+{ return ERR_PTR(-ENODEV); }
+
 static inline void thermal_zone_device_unregister(struct thermal_zone_device *tz)
 { }