mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
2.8 KiB
83 lines
2.8 KiB
/* SPDX-License-Identifier: GPL-2.0-or-later */ |
|
/* |
|
* hwmon-sysfs.h - hardware monitoring chip driver sysfs defines |
|
* |
|
* Copyright (C) 2005 Yani Ioannou <[email protected]> |
|
*/ |
|
#ifndef _LINUX_HWMON_SYSFS_H |
|
#define _LINUX_HWMON_SYSFS_H |
|
|
|
#include <linux/device.h> |
|
|
|
struct sensor_device_attribute{ |
|
struct device_attribute dev_attr; |
|
int index; |
|
}; |
|
#define to_sensor_dev_attr(_dev_attr) \ |
|
container_of(_dev_attr, struct sensor_device_attribute, dev_attr) |
|
|
|
#define SENSOR_ATTR(_name, _mode, _show, _store, _index) \ |
|
{ .dev_attr = __ATTR(_name, _mode, _show, _store), \ |
|
.index = _index } |
|
|
|
#define SENSOR_ATTR_RO(_name, _func, _index) \ |
|
SENSOR_ATTR(_name, 0444, _func##_show, NULL, _index) |
|
|
|
#define SENSOR_ATTR_RW(_name, _func, _index) \ |
|
SENSOR_ATTR(_name, 0644, _func##_show, _func##_store, _index) |
|
|
|
#define SENSOR_ATTR_WO(_name, _func, _index) \ |
|
SENSOR_ATTR(_name, 0200, NULL, _func##_store, _index) |
|
|
|
#define SENSOR_DEVICE_ATTR(_name, _mode, _show, _store, _index) \ |
|
struct sensor_device_attribute sensor_dev_attr_##_name \ |
|
= SENSOR_ATTR(_name, _mode, _show, _store, _index) |
|
|
|
#define SENSOR_DEVICE_ATTR_RO(_name, _func, _index) \ |
|
SENSOR_DEVICE_ATTR(_name, 0444, _func##_show, NULL, _index) |
|
|
|
#define SENSOR_DEVICE_ATTR_RW(_name, _func, _index) \ |
|
SENSOR_DEVICE_ATTR(_name, 0644, _func##_show, _func##_store, _index) |
|
|
|
#define SENSOR_DEVICE_ATTR_WO(_name, _func, _index) \ |
|
SENSOR_DEVICE_ATTR(_name, 0200, NULL, _func##_store, _index) |
|
|
|
struct sensor_device_attribute_2 { |
|
struct device_attribute dev_attr; |
|
u8 index; |
|
u8 nr; |
|
}; |
|
#define to_sensor_dev_attr_2(_dev_attr) \ |
|
container_of(_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, \ |
|
.nr = _nr } |
|
|
|
#define SENSOR_ATTR_2_RO(_name, _func, _nr, _index) \ |
|
SENSOR_ATTR_2(_name, 0444, _func##_show, NULL, _nr, _index) |
|
|
|
#define SENSOR_ATTR_2_RW(_name, _func, _nr, _index) \ |
|
SENSOR_ATTR_2(_name, 0644, _func##_show, _func##_store, _nr, _index) |
|
|
|
#define SENSOR_ATTR_2_WO(_name, _func, _nr, _index) \ |
|
SENSOR_ATTR_2(_name, 0200, NULL, _func##_store, _nr, _index) |
|
|
|
#define SENSOR_DEVICE_ATTR_2(_name,_mode,_show,_store,_nr,_index) \ |
|
struct sensor_device_attribute_2 sensor_dev_attr_##_name \ |
|
= SENSOR_ATTR_2(_name, _mode, _show, _store, _nr, _index) |
|
|
|
#define SENSOR_DEVICE_ATTR_2_RO(_name, _func, _nr, _index) \ |
|
SENSOR_DEVICE_ATTR_2(_name, 0444, _func##_show, NULL, \ |
|
_nr, _index) |
|
|
|
#define SENSOR_DEVICE_ATTR_2_RW(_name, _func, _nr, _index) \ |
|
SENSOR_DEVICE_ATTR_2(_name, 0644, _func##_show, _func##_store, \ |
|
_nr, _index) |
|
|
|
#define SENSOR_DEVICE_ATTR_2_WO(_name, _func, _nr, _index) \ |
|
SENSOR_DEVICE_ATTR_2(_name, 0200, NULL, _func##_store, \ |
|
_nr, _index) |
|
|
|
#endif /* _LINUX_HWMON_SYSFS_H */
|
|
|