mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 21:54:11 +08:00
hwmon: (thmc50) Use permission specific SENSOR[_DEVICE]_ATTR variants
Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_<PERMS> in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
parent
7352ae8d00
commit
29168f30e3
@ -128,16 +128,16 @@ static struct thmc50_data *thmc50_update_device(struct device *dev)
|
||||
return data;
|
||||
}
|
||||
|
||||
static ssize_t show_analog_out(struct device *dev,
|
||||
static ssize_t analog_out_show(struct device *dev,
|
||||
struct device_attribute *attr, char *buf)
|
||||
{
|
||||
struct thmc50_data *data = thmc50_update_device(dev);
|
||||
return sprintf(buf, "%d\n", data->analog_out);
|
||||
}
|
||||
|
||||
static ssize_t set_analog_out(struct device *dev,
|
||||
struct device_attribute *attr,
|
||||
const char *buf, size_t count)
|
||||
static ssize_t analog_out_store(struct device *dev,
|
||||
struct device_attribute *attr,
|
||||
const char *buf, size_t count)
|
||||
{
|
||||
struct thmc50_data *data = dev_get_drvdata(dev);
|
||||
struct i2c_client *client = data->client;
|
||||
@ -166,14 +166,14 @@ static ssize_t set_analog_out(struct device *dev,
|
||||
}
|
||||
|
||||
/* There is only one PWM mode = DC */
|
||||
static ssize_t show_pwm_mode(struct device *dev, struct device_attribute *attr,
|
||||
char *buf)
|
||||
static ssize_t pwm_mode_show(struct device *dev,
|
||||
struct device_attribute *attr, char *buf)
|
||||
{
|
||||
return sprintf(buf, "0\n");
|
||||
}
|
||||
|
||||
/* Temperatures */
|
||||
static ssize_t show_temp(struct device *dev, struct device_attribute *attr,
|
||||
static ssize_t temp_show(struct device *dev, struct device_attribute *attr,
|
||||
char *buf)
|
||||
{
|
||||
int nr = to_sensor_dev_attr(attr)->index;
|
||||
@ -181,16 +181,17 @@ static ssize_t show_temp(struct device *dev, struct device_attribute *attr,
|
||||
return sprintf(buf, "%d\n", data->temp_input[nr] * 1000);
|
||||
}
|
||||
|
||||
static ssize_t show_temp_min(struct device *dev, struct device_attribute *attr,
|
||||
char *buf)
|
||||
static ssize_t temp_min_show(struct device *dev,
|
||||
struct device_attribute *attr, char *buf)
|
||||
{
|
||||
int nr = to_sensor_dev_attr(attr)->index;
|
||||
struct thmc50_data *data = thmc50_update_device(dev);
|
||||
return sprintf(buf, "%d\n", data->temp_min[nr] * 1000);
|
||||
}
|
||||
|
||||
static ssize_t set_temp_min(struct device *dev, struct device_attribute *attr,
|
||||
const char *buf, size_t count)
|
||||
static ssize_t temp_min_store(struct device *dev,
|
||||
struct device_attribute *attr, const char *buf,
|
||||
size_t count)
|
||||
{
|
||||
int nr = to_sensor_dev_attr(attr)->index;
|
||||
struct thmc50_data *data = dev_get_drvdata(dev);
|
||||
@ -210,16 +211,17 @@ static ssize_t set_temp_min(struct device *dev, struct device_attribute *attr,
|
||||
return count;
|
||||
}
|
||||
|
||||
static ssize_t show_temp_max(struct device *dev, struct device_attribute *attr,
|
||||
char *buf)
|
||||
static ssize_t temp_max_show(struct device *dev,
|
||||
struct device_attribute *attr, char *buf)
|
||||
{
|
||||
int nr = to_sensor_dev_attr(attr)->index;
|
||||
struct thmc50_data *data = thmc50_update_device(dev);
|
||||
return sprintf(buf, "%d\n", data->temp_max[nr] * 1000);
|
||||
}
|
||||
|
||||
static ssize_t set_temp_max(struct device *dev, struct device_attribute *attr,
|
||||
const char *buf, size_t count)
|
||||
static ssize_t temp_max_store(struct device *dev,
|
||||
struct device_attribute *attr, const char *buf,
|
||||
size_t count)
|
||||
{
|
||||
int nr = to_sensor_dev_attr(attr)->index;
|
||||
struct thmc50_data *data = dev_get_drvdata(dev);
|
||||
@ -239,16 +241,15 @@ static ssize_t set_temp_max(struct device *dev, struct device_attribute *attr,
|
||||
return count;
|
||||
}
|
||||
|
||||
static ssize_t show_temp_critical(struct device *dev,
|
||||
struct device_attribute *attr,
|
||||
char *buf)
|
||||
static ssize_t temp_critical_show(struct device *dev,
|
||||
struct device_attribute *attr, char *buf)
|
||||
{
|
||||
int nr = to_sensor_dev_attr(attr)->index;
|
||||
struct thmc50_data *data = thmc50_update_device(dev);
|
||||
return sprintf(buf, "%d\n", data->temp_critical[nr] * 1000);
|
||||
}
|
||||
|
||||
static ssize_t show_alarm(struct device *dev, struct device_attribute *attr,
|
||||
static ssize_t alarm_show(struct device *dev, struct device_attribute *attr,
|
||||
char *buf)
|
||||
{
|
||||
int index = to_sensor_dev_attr(attr)->index;
|
||||
@ -257,29 +258,27 @@ static ssize_t show_alarm(struct device *dev, struct device_attribute *attr,
|
||||
return sprintf(buf, "%u\n", (data->alarms >> index) & 1);
|
||||
}
|
||||
|
||||
#define temp_reg(offset) \
|
||||
static SENSOR_DEVICE_ATTR(temp##offset##_input, S_IRUGO, show_temp, \
|
||||
NULL, offset - 1); \
|
||||
static SENSOR_DEVICE_ATTR(temp##offset##_min, S_IRUGO | S_IWUSR, \
|
||||
show_temp_min, set_temp_min, offset - 1); \
|
||||
static SENSOR_DEVICE_ATTR(temp##offset##_max, S_IRUGO | S_IWUSR, \
|
||||
show_temp_max, set_temp_max, offset - 1); \
|
||||
static SENSOR_DEVICE_ATTR(temp##offset##_crit, S_IRUGO, \
|
||||
show_temp_critical, NULL, offset - 1);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp1_input, temp, 0);
|
||||
static SENSOR_DEVICE_ATTR_RW(temp1_min, temp_min, 0);
|
||||
static SENSOR_DEVICE_ATTR_RW(temp1_max, temp_max, 0);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp1_crit, temp_critical, 0);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp2_input, temp, 1);
|
||||
static SENSOR_DEVICE_ATTR_RW(temp2_min, temp_min, 1);
|
||||
static SENSOR_DEVICE_ATTR_RW(temp2_max, temp_max, 1);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp2_crit, temp_critical, 1);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp3_input, temp, 2);
|
||||
static SENSOR_DEVICE_ATTR_RW(temp3_min, temp_min, 2);
|
||||
static SENSOR_DEVICE_ATTR_RW(temp3_max, temp_max, 2);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp3_crit, temp_critical, 2);
|
||||
|
||||
temp_reg(1);
|
||||
temp_reg(2);
|
||||
temp_reg(3);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp1_alarm, alarm, 0);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp2_alarm, alarm, 5);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp3_alarm, alarm, 1);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp2_fault, alarm, 7);
|
||||
static SENSOR_DEVICE_ATTR_RO(temp3_fault, alarm, 2);
|
||||
|
||||
static SENSOR_DEVICE_ATTR(temp1_alarm, S_IRUGO, show_alarm, NULL, 0);
|
||||
static SENSOR_DEVICE_ATTR(temp2_alarm, S_IRUGO, show_alarm, NULL, 5);
|
||||
static SENSOR_DEVICE_ATTR(temp3_alarm, S_IRUGO, show_alarm, NULL, 1);
|
||||
static SENSOR_DEVICE_ATTR(temp2_fault, S_IRUGO, show_alarm, NULL, 7);
|
||||
static SENSOR_DEVICE_ATTR(temp3_fault, S_IRUGO, show_alarm, NULL, 2);
|
||||
|
||||
static SENSOR_DEVICE_ATTR(pwm1, S_IRUGO | S_IWUSR, show_analog_out,
|
||||
set_analog_out, 0);
|
||||
static SENSOR_DEVICE_ATTR(pwm1_mode, S_IRUGO, show_pwm_mode, NULL, 0);
|
||||
static SENSOR_DEVICE_ATTR_RW(pwm1, analog_out, 0);
|
||||
static SENSOR_DEVICE_ATTR_RO(pwm1_mode, pwm_mode, 0);
|
||||
|
||||
static struct attribute *thmc50_attributes[] = {
|
||||
&sensor_dev_attr_temp1_max.dev_attr.attr,
|
||||
|
Loading…
Reference in New Issue
Block a user