summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorThomas Weißschuh <linux@weissschuh.net>2026-08-06 08:09:13 +0200
committerGuenter Roeck <linux@roeck-us.net>2026-08-10 08:59:43 -0700
commit87fdc8d7bb64d6f6669fa8daf4c59940387df07e (patch)
tree1e84b169fd5a53839b75ac3e421002ad334acfd9 /include
parent52fcdd5639dc0cc2701a7d035e6d05adfd393f73 (diff)
downloadlinux-stable-87fdc8d7bb64d6f6669fa8daf4c59940387df07e.tar.gz
linux-stable-87fdc8d7bb64d6f6669fa8daf4c59940387df07e.zip
hwmon: (sysfs) Allow drivers to register const attributes
Switch to the __DEVICE_ATTR() macro which can handle callbacks taking both const and non-const attribute structure arguments. Allow the step-wise migration of the drivers. Also use container_of_const() over container_of() to avoid casting away the constness accidentally. Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Link: https://lore.kernel.org/r/20260806-sysfs-const-attr-hwmon-v2-3-22fee8b85509@weissschuh.net [groeck: Squashed 'hwmon: (core) Constify PEC device attribute'] Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'include')
-rw-r--r--include/linux/hwmon-sysfs.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/include/linux/hwmon-sysfs.h b/include/linux/hwmon-sysfs.h
index d896713359cd..ee5b33185b2d 100644
--- a/include/linux/hwmon-sysfs.h
+++ b/include/linux/hwmon-sysfs.h
@@ -15,10 +15,10 @@ struct sensor_device_attribute{
int index;
};
#define to_sensor_dev_attr(_dev_attr) \
- container_of(_dev_attr, struct sensor_device_attribute, dev_attr)
+ container_of_const(_dev_attr, struct sensor_device_attribute, dev_attr)
-#define SENSOR_ATTR(_name, _mode, _show, _store, _index) \
- { .dev_attr = __ATTR(_name, _mode, _show, _store), \
+#define SENSOR_ATTR(_name, _mode, _show, _store, _index) \
+ { .dev_attr = __DEVICE_ATTR(_name, _mode, _show, _store), \
.index = _index }
#define SENSOR_ATTR_RO(_name, _func, _index) \
@@ -49,11 +49,11 @@ struct sensor_device_attribute_2 {
u8 nr;
};
#define to_sensor_dev_attr_2(_dev_attr) \
- container_of(_dev_attr, struct sensor_device_attribute_2, dev_attr)
+ container_of_const(_dev_attr, struct sensor_device_attribute_2, dev_attr)
-#define SENSOR_ATTR_2(_name, _mode, _show, _store, _nr, _index) \
- { .dev_attr = __ATTR(_name, _mode, _show, _store), \
- .index = _index, \
+#define SENSOR_ATTR_2(_name, _mode, _show, _store, _nr, _index) \
+ { .dev_attr = __DEVICE_ATTR(_name, _mode, _show, _store), \
+ .index = _index, \
.nr = _nr }
#define SENSOR_ATTR_2_RO(_name, _func, _nr, _index) \