From: Daniel Lezcano <daniel.lezcano@linaro.org>
To: daniel.lezcano@linaro.org, rafael@kernel.org
Cc: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
rui.zhang@intel.com, Amit Kucheria <amitk@kernel.org>
Subject: [PATCH v6 02/29] thermal/sysfs: Always expose hysteresis attributes
Date: Tue, 27 Sep 2022 16:32:12 +0200 [thread overview]
Message-ID: <20220927143239.376737-3-daniel.lezcano@linaro.org> (raw)
In-Reply-To: <20220927143239.376737-1-daniel.lezcano@linaro.org>
Instead of avoiding to expose the hysteresis attributes of a thermal
zone when its get_trip_hyst() operation is not defined, which is
confusing, expose them always and use the default
thermal_zone_get_trip() function returning 0 hysteresis when that
operation is not present.
The hysteresis of 0 is perfectly valid, so this change should not
introduce any backwards compatibility issues.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
drivers/thermal/thermal_sysfs.c | 25 +++++++++----------------
1 file changed, 9 insertions(+), 16 deletions(-)
diff --git a/drivers/thermal/thermal_sysfs.c b/drivers/thermal/thermal_sysfs.c
index d093d7aa64c6..6c45194aaabb 100644
--- a/drivers/thermal/thermal_sysfs.c
+++ b/drivers/thermal/thermal_sysfs.c
@@ -426,23 +426,20 @@ static int create_trip_attrs(struct thermal_zone_device *tz, int mask)
return -ENOMEM;
}
- if (tz->ops->get_trip_hyst) {
- tz->trip_hyst_attrs = kcalloc(tz->num_trips,
- sizeof(*tz->trip_hyst_attrs),
- GFP_KERNEL);
- if (!tz->trip_hyst_attrs) {
- kfree(tz->trip_type_attrs);
- kfree(tz->trip_temp_attrs);
- return -ENOMEM;
- }
+ tz->trip_hyst_attrs = kcalloc(tz->num_trips,
+ sizeof(*tz->trip_hyst_attrs),
+ GFP_KERNEL);
+ if (!tz->trip_hyst_attrs) {
+ kfree(tz->trip_type_attrs);
+ kfree(tz->trip_temp_attrs);
+ return -ENOMEM;
}
attrs = kcalloc(tz->num_trips * 3 + 1, sizeof(*attrs), GFP_KERNEL);
if (!attrs) {
kfree(tz->trip_type_attrs);
kfree(tz->trip_temp_attrs);
- if (tz->ops->get_trip_hyst)
- kfree(tz->trip_hyst_attrs);
+ kfree(tz->trip_hyst_attrs);
return -ENOMEM;
}
@@ -475,9 +472,6 @@ static int create_trip_attrs(struct thermal_zone_device *tz, int mask)
}
attrs[indx + tz->num_trips] = &tz->trip_temp_attrs[indx].attr.attr;
- /* create Optional trip hyst attribute */
- if (!tz->ops->get_trip_hyst)
- continue;
snprintf(tz->trip_hyst_attrs[indx].name, THERMAL_NAME_LENGTH,
"trip_point_%d_hyst", indx);
@@ -514,8 +508,7 @@ static void destroy_trip_attrs(struct thermal_zone_device *tz)
kfree(tz->trip_type_attrs);
kfree(tz->trip_temp_attrs);
- if (tz->ops->get_trip_hyst)
- kfree(tz->trip_hyst_attrs);
+ kfree(tz->trip_hyst_attrs);
kfree(tz->trips_attribute_group.attrs);
}
--
2.34.1
next prev parent reply other threads:[~2022-09-27 14:33 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-27 14:32 [PATCH v5 00/30] Rework the trip points creation Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 01/29] thermal/core: Add a generic thermal_zone_get_trip() function Daniel Lezcano
2022-09-27 14:32 ` Daniel Lezcano [this message]
2022-09-27 14:32 ` [PATCH v6 03/29] thermal/core: Add a generic thermal_zone_set_trip() function Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 04/29] thermal/core/governors: Use thermal_zone_get_trip() instead of ops functions Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 05/29] thermal/of: Use generic thermal_zone_get_trip() function Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 06/29] thermal/of: Remove unused functions Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 07/29] thermal/drivers/exynos: Use generic thermal_zone_get_trip() function Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 08/29] thermal/drivers/exynos: of_thermal_get_ntrips() Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 09/29] thermal/drivers/exynos: Replace of_thermal_is_trip_valid() by thermal_zone_get_trip() Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 10/29] thermal/drivers/tegra: Use generic thermal_zone_get_trip() function Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 11/29] thermal/drivers/uniphier: " Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 12/29] thermal/drivers/hisi: " Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 13/29] thermal/drivers/qcom: " Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 14/29] thermal/drivers/armada: " Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 15/29] thermal/drivers/rcar_gen3: Use the generic function to get the number of trips Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 16/29] thermal/of: Remove of_thermal_get_ntrips() Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 17/29] thermal/of: Remove of_thermal_is_trip_valid() Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 18/29] thermal/of: Remove of_thermal_set_trip_hyst() Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 19/29] thermal/of: Remove of_thermal_get_crit_temp() Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 20/29] thermal/drivers/st: Use generic trip points Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 21/29] thermal/drivers/imx: Use generic thermal_zone_get_trip() function Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 22/29] thermal/drivers/rcar: " Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 23/29] thermal/drivers/broadcom: " Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 24/29] thermal/drivers/da9062: " Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 25/29] thermal/drivers/ti: Remove unused macros ti_thermal_get_trip_value() / ti_thermal_trip_is_valid() Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 26/29] thermal/drivers/acerhdf: Use generic thermal_zone_get_trip() function Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 27/29] thermal/drivers/cxgb4: " Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 28/29] thermal/intel/int340x: Replace parameter to simplify Daniel Lezcano
2022-09-27 14:32 ` [PATCH v6 29/29] thermal/drivers/intel: Use generic thermal_zone_get_trip() function Daniel Lezcano
2022-09-27 14:35 ` [PATCH v5 00/30] Rework the trip points creation Dmitry Baryshkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220927143239.376737-3-daniel.lezcano@linaro.org \
--to=daniel.lezcano@linaro.org \
--cc=amitk@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=rafael@kernel.org \
--cc=rui.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).