Lines Matching +full:reg +full:- +full:names
21 #include <linux/hwmon-sysfs.h>
23 /* Here are names of the chip's registers (a.k.a. commands) */
52 mutex_lock(&data->update_lock); in ltc4215_update_device()
55 if (time_after(jiffies, data->last_updated + HZ / 10) || !data->valid) { in ltc4215_update_device()
57 dev_dbg(&client->dev, "Starting ltc4215 update\n"); in ltc4215_update_device()
60 for (i = 0; i < ARRAY_SIZE(data->regs); i++) { in ltc4215_update_device()
63 data->regs[i] = 0; in ltc4215_update_device()
65 data->regs[i] = val; in ltc4215_update_device()
68 data->last_updated = jiffies; in ltc4215_update_device()
69 data->valid = 1; in ltc4215_update_device()
72 mutex_unlock(&data->update_lock); in ltc4215_update_device()
78 static int ltc4215_get_voltage(struct device *dev, u8 reg) in ltc4215_get_voltage() argument
81 const u8 regval = data->regs[reg]; in ltc4215_get_voltage()
84 switch (reg) { in ltc4215_get_voltage()
112 /* The strange looking conversions that follow are fixed-point in ltc4215_get_current()
127 const unsigned int voltage = data->regs[LTC4215_SENSE] * 151; in ltc4215_get_current()
140 const int voltage = ltc4215_get_voltage(dev, attr->index); in ltc4215_show_voltage()
173 const u8 reg = data->regs[attr->index]; in ltc4215_show_alarm() local
174 const u32 mask = attr->nr; in ltc4215_show_alarm()
176 return snprintf(buf, PAGE_SIZE, "%u\n", (reg & mask) ? 1 : 0); in ltc4215_show_alarm()
196 #define LTC4215_ALARM(name, mask, reg) \ argument
198 ltc4215_show_alarm, NULL, (mask), reg)
244 struct i2c_adapter *adapter = client->adapter; in ltc4215_probe()
249 return -ENODEV; in ltc4215_probe()
253 ret = -ENOMEM; in ltc4215_probe()
258 mutex_init(&data->update_lock); in ltc4215_probe()
264 ret = sysfs_create_group(&client->dev.kobj, <c4215_group); in ltc4215_probe()
268 data->hwmon_dev = hwmon_device_register(&client->dev); in ltc4215_probe()
269 if (IS_ERR(data->hwmon_dev)) { in ltc4215_probe()
270 ret = PTR_ERR(data->hwmon_dev); in ltc4215_probe()
277 sysfs_remove_group(&client->dev.kobj, <c4215_group); in ltc4215_probe()
288 hwmon_device_unregister(data->hwmon_dev); in ltc4215_remove()
289 sysfs_remove_group(&client->dev.kobj, <c4215_group); in ltc4215_remove()