Commit 3c45f2c7 authored by Kyle McMartin's avatar Kyle McMartin Committed by Guenter Roeck

acpi_power_meter: use a {RW,RO}_SENSOR_TEMPLATE macro to clean things up

Similar to how we do PCI/USB device id structs.
Signed-off-by: default avatarKyle McMartin <kyle@redhat.com>
Signed-off-by: default avatarGuenter Roeck <guenter.roeck@ericsson.com>
parent 81194cd2
...@@ -461,128 +461,72 @@ static ssize_t show_name(struct device *dev, ...@@ -461,128 +461,72 @@ static ssize_t show_name(struct device *dev,
return sprintf(buf, "%s\n", ACPI_POWER_METER_NAME); return sprintf(buf, "%s\n", ACPI_POWER_METER_NAME);
} }
#define RO_SENSOR_TEMPLATE(_label, _show, _index) \
{ \
.label = _label, \
.show = _show, \
.index = _index, \
}
#define RW_SENSOR_TEMPLATE(_label, _show, _set, _index) \
{ \
.label = _label, \
.show = _show, \
.set = _set, \
.index = _index, \
}
/* Sensor descriptions. If you add a sensor, update NUM_SENSORS above! */ /* Sensor descriptions. If you add a sensor, update NUM_SENSORS above! */
static struct sensor_template meter_ro_attrs[] = { static struct sensor_template meter_ro_attrs[] = {
{ RO_SENSOR_TEMPLATE(POWER_AVERAGE_NAME, show_power, 0),
.label = POWER_AVERAGE_NAME, RO_SENSOR_TEMPLATE("power1_accuracy", show_accuracy, 0),
.show = show_power, RO_SENSOR_TEMPLATE("power1_average_interval_min", show_val, 0),
.index = 0, RO_SENSOR_TEMPLATE("power1_average_interval_max", show_val, 1),
}, RO_SENSOR_TEMPLATE("power1_is_battery", show_val, 5),
{
.label = "power1_accuracy",
.show = show_accuracy,
.index = 0,
},
{ .label = "power1_average_interval_min",
.show = show_val,
.index = 0
},
{
.label = "power1_average_interval_max",
.show = show_val,
.index = 1,
},
{
.label = "power1_is_battery",
.show = show_val,
.index = 5,
},
{}, {},
}; };
static struct sensor_template meter_rw_attrs[] = { static struct sensor_template meter_rw_attrs[] = {
{ RW_SENSOR_TEMPLATE(POWER_AVG_INTERVAL_NAME, show_avg_interval,
.label = POWER_AVG_INTERVAL_NAME, set_avg_interval, 0),
.show = show_avg_interval,
.set = set_avg_interval,
.index = 0,
},
{}, {},
}; };
static struct sensor_template misc_cap_attrs[] = { static struct sensor_template misc_cap_attrs[] = {
{ RO_SENSOR_TEMPLATE("power1_cap_min", show_val, 2),
.label = "power1_cap_min", RO_SENSOR_TEMPLATE("power1_cap_max", show_val, 3),
.show = show_val, RO_SENSOR_TEMPLATE("power1_cap_hyst", show_val, 4),
.index = 2, RO_SENSOR_TEMPLATE(POWER_ALARM_NAME, show_val, 6),
},
{
.label = "power1_cap_max",
.show = show_val,
.index = 3,
},
{
.label = "power1_cap_hyst",
.show = show_val,
.index = 4,
},
{
.label = POWER_ALARM_NAME,
.show = show_val,
.index = 6,
},
{}, {},
}; };
static struct sensor_template ro_cap_attrs[] = { static struct sensor_template ro_cap_attrs[] = {
{ RO_SENSOR_TEMPLATE(POWER_CAP_NAME, show_cap, 0),
.label = POWER_CAP_NAME,
.show = show_cap,
.index = 0,
},
{}, {},
}; };
static struct sensor_template rw_cap_attrs[] = { static struct sensor_template rw_cap_attrs[] = {
{ RW_SENSOR_TEMPLATE(POWER_CAP_NAME, show_cap, set_cap, 0),
.label = POWER_CAP_NAME,
.show = show_cap,
.set = set_cap,
.index = 0,
},
{}, {},
}; };
static struct sensor_template trip_attrs[] = { static struct sensor_template trip_attrs[] = {
{ RW_SENSOR_TEMPLATE("power1_average_min", show_val, set_trip, 7),
.label = "power1_average_min", RW_SENSOR_TEMPLATE("power1_average_max", show_val, set_trip, 8),
.show = show_val,
.set = set_trip,
.index = 7,
},
{
.label = "power1_average_max",
.show = show_val,
.set = set_trip,
.index = 8,
},
{}, {},
}; };
static struct sensor_template misc_attrs[] = { static struct sensor_template misc_attrs[] = {
{ RO_SENSOR_TEMPLATE("name", show_name, 0),
.label = "name", RO_SENSOR_TEMPLATE("power1_model_number", show_str, 0),
.show = show_name, RO_SENSOR_TEMPLATE("power1_oem_info", show_str, 2),
.index = 0, RO_SENSOR_TEMPLATE("power1_serial_number", show_str, 1),
},
{
.label = "power1_model_number",
.show = show_str,
.index = 0,
},
{
.label = "power1_oem_info",
.show = show_str,
.index = 2,
},
{
.label = "power1_serial_number",
.show = show_str,
.index = 1,
},
{}, {},
}; };
#undef RO_SENSOR_TEMPLATE
#undef RW_SENSOR_TEMPLATE
/* Read power domain data */ /* Read power domain data */
static void remove_domain_devices(struct acpi_power_meter_resource *resource) static void remove_domain_devices(struct acpi_power_meter_resource *resource)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment