Lines Matching refs:data

132 	struct ics932s401_data *data = i2c_get_clientdata(client);  in ics932s401_update_device()  local
136 mutex_lock(&data->lock); in ics932s401_update_device()
137 if (time_before(local_jiffies, data->sensors_last_updated + in ics932s401_update_device()
139 && data->sensors_valid) in ics932s401_update_device()
149 data->regs[regs_to_copy[i]] = temp >> 8; in ics932s401_update_device()
152 data->sensors_last_updated = local_jiffies; in ics932s401_update_device()
153 data->sensors_valid = 1; in ics932s401_update_device()
156 mutex_unlock(&data->lock); in ics932s401_update_device()
157 return data; in ics932s401_update_device()
164 struct ics932s401_data *data = ics932s401_update_device(dev); in show_spread_enabled() local
166 if (data->regs[ICS932S401_REG_CFG2] & ICS932S401_CFG1_SPREAD) in show_spread_enabled()
189 static int calculate_cpu_freq(struct ics932s401_data *data) in calculate_cpu_freq() argument
193 m = data->regs[ICS932S401_REG_CPU_M_CTRL] & ICS932S401_M_MASK; in calculate_cpu_freq()
194 n = data->regs[ICS932S401_REG_CPU_N_CTRL]; in calculate_cpu_freq()
197 n |= ((int)data->regs[ICS932S401_REG_CPU_M_CTRL] & 0x80) << 1; in calculate_cpu_freq()
198 n |= ((int)data->regs[ICS932S401_REG_CPU_M_CTRL] & 0x40) << 3; in calculate_cpu_freq()
201 freq /= divisors[data->regs[ICS932S401_REG_CPU_DIVISOR] >> in calculate_cpu_freq()
211 struct ics932s401_data *data = ics932s401_update_device(dev); in show_cpu_clock() local
213 return sprintf(buf, "%d\n", calculate_cpu_freq(data)); in show_cpu_clock()
220 struct ics932s401_data *data = ics932s401_update_device(dev); in show_cpu_clock_sel() local
223 if (data->regs[ICS932S401_REG_CTRL] & ICS932S401_MN_ENABLED) in show_cpu_clock_sel()
224 freq = calculate_cpu_freq(data); in show_cpu_clock_sel()
227 int fid = data->regs[ICS932S401_REG_CFG7] & ICS932S401_FS_MASK; in show_cpu_clock_sel()
229 if (data->regs[ICS932S401_REG_CTRL] & ICS932S401_CPU_ALT) { in show_cpu_clock_sel()
245 static int calculate_src_freq(struct ics932s401_data *data) in calculate_src_freq() argument
249 m = data->regs[ICS932S401_REG_SRC_M_CTRL] & ICS932S401_M_MASK; in calculate_src_freq()
250 n = data->regs[ICS932S401_REG_SRC_N_CTRL]; in calculate_src_freq()
253 n |= ((int)data->regs[ICS932S401_REG_SRC_M_CTRL] & 0x80) << 1; in calculate_src_freq()
254 n |= ((int)data->regs[ICS932S401_REG_SRC_M_CTRL] & 0x40) << 3; in calculate_src_freq()
257 freq /= divisors[data->regs[ICS932S401_REG_PCISRC_DIVISOR] & in calculate_src_freq()
267 struct ics932s401_data *data = ics932s401_update_device(dev); in show_src_clock() local
269 return sprintf(buf, "%d\n", calculate_src_freq(data)); in show_src_clock()
276 struct ics932s401_data *data = ics932s401_update_device(dev); in show_src_clock_sel() local
279 if (data->regs[ICS932S401_REG_CTRL] & ICS932S401_MN_ENABLED) in show_src_clock_sel()
280 freq = calculate_src_freq(data); in show_src_clock_sel()
283 if (data->regs[ICS932S401_REG_CTRL] & ICS932S401_CPU_ALT && in show_src_clock_sel()
284 data->regs[ICS932S401_REG_CTRL] & ICS932S401_SRC_ALT) in show_src_clock_sel()
293 static int calculate_pci_freq(struct ics932s401_data *data) in calculate_pci_freq() argument
297 m = data->regs[ICS932S401_REG_SRC_M_CTRL] & ICS932S401_M_MASK; in calculate_pci_freq()
298 n = data->regs[ICS932S401_REG_SRC_N_CTRL]; in calculate_pci_freq()
301 n |= ((int)data->regs[ICS932S401_REG_SRC_M_CTRL] & 0x80) << 1; in calculate_pci_freq()
302 n |= ((int)data->regs[ICS932S401_REG_SRC_M_CTRL] & 0x40) << 3; in calculate_pci_freq()
305 freq /= divisors[data->regs[ICS932S401_REG_PCISRC_DIVISOR] >> in calculate_pci_freq()
315 struct ics932s401_data *data = ics932s401_update_device(dev); in show_pci_clock() local
317 return sprintf(buf, "%d\n", calculate_pci_freq(data)); in show_pci_clock()
324 struct ics932s401_data *data = ics932s401_update_device(dev); in show_pci_clock_sel() local
327 if (data->regs[ICS932S401_REG_CTRL] & ICS932S401_MN_ENABLED) in show_pci_clock_sel()
328 freq = calculate_pci_freq(data); in show_pci_clock_sel()
391 struct ics932s401_data *data = ics932s401_update_device(dev); in show_spread() local
395 if (!(data->regs[ICS932S401_REG_CFG2] & ICS932S401_CFG1_SPREAD)) in show_spread()
405 val = data->regs[reg] | (data->regs[reg + 1] << 8); in show_spread()
446 struct ics932s401_data *data; in ics932s401_probe() local
449 data = kzalloc(sizeof(struct ics932s401_data), GFP_KERNEL); in ics932s401_probe()
450 if (!data) { in ics932s401_probe()
455 i2c_set_clientdata(client, data); in ics932s401_probe()
456 mutex_init(&data->lock); in ics932s401_probe()
461 data->attrs.attrs = ics932s401_attr; in ics932s401_probe()
462 err = sysfs_create_group(&client->dev.kobj, &data->attrs); in ics932s401_probe()
469 kfree(data); in ics932s401_probe()
476 struct ics932s401_data *data = i2c_get_clientdata(client); in ics932s401_remove() local
478 sysfs_remove_group(&client->dev.kobj, &data->attrs); in ics932s401_remove()
479 kfree(data); in ics932s401_remove()