Lines Matching refs:client
128 static int f75375_detect(struct i2c_client *client,
130 static int f75375_probe(struct i2c_client *client,
132 static int f75375_remove(struct i2c_client *client);
154 static inline int f75375_read8(struct i2c_client *client, u8 reg) in f75375_read8() argument
156 return i2c_smbus_read_byte_data(client, reg); in f75375_read8()
160 static inline u16 f75375_read16(struct i2c_client *client, u8 reg) in f75375_read16() argument
162 return (i2c_smbus_read_byte_data(client, reg) << 8) in f75375_read16()
163 | i2c_smbus_read_byte_data(client, reg + 1); in f75375_read16()
166 static inline void f75375_write8(struct i2c_client *client, u8 reg, in f75375_write8() argument
169 i2c_smbus_write_byte_data(client, reg, value); in f75375_write8()
172 static inline void f75375_write16(struct i2c_client *client, u8 reg, in f75375_write16() argument
175 int err = i2c_smbus_write_byte_data(client, reg, (value >> 8)); in f75375_write16()
178 i2c_smbus_write_byte_data(client, reg + 1, (value & 0xFF)); in f75375_write16()
181 static void f75375_write_pwm(struct i2c_client *client, int nr) in f75375_write_pwm() argument
183 struct f75375_data *data = i2c_get_clientdata(client); in f75375_write_pwm()
185 f75375_write16(client, F75375_REG_FAN_EXP(nr), data->pwm[nr]); in f75375_write_pwm()
187 f75375_write8(client, F75375_REG_FAN_PWM_DUTY(nr), in f75375_write_pwm()
193 struct i2c_client *client = to_i2c_client(dev); in f75375_update_device() local
194 struct f75375_data *data = i2c_get_clientdata(client); in f75375_update_device()
204 f75375_read8(client, F75375_REG_TEMP_HIGH(nr)); in f75375_update_device()
206 f75375_read8(client, F75375_REG_TEMP_HYST(nr)); in f75375_update_device()
208 f75375_read16(client, F75375_REG_FAN_FULL(nr)); in f75375_update_device()
210 f75375_read16(client, F75375_REG_FAN_MIN(nr)); in f75375_update_device()
212 f75375_read16(client, F75375_REG_FAN_EXP(nr)); in f75375_update_device()
216 f75375_read8(client, F75375_REG_VOLT_HIGH(nr)); in f75375_update_device()
218 f75375_read8(client, F75375_REG_VOLT_LOW(nr)); in f75375_update_device()
220 data->fan_timer = f75375_read8(client, F75375_REG_FAN_TIMER); in f75375_update_device()
228 data->pwm[nr] = f75375_read8(client, in f75375_update_device()
232 f75375_read8(client, F75375_REG_TEMP(nr)) << 8; in f75375_update_device()
236 f75375_read8(client, in f75375_update_device()
239 f75375_read16(client, F75375_REG_FAN(nr)); in f75375_update_device()
243 f75375_read8(client, F75375_REG_VOLT(nr)); in f75375_update_device()
303 struct i2c_client *client = to_i2c_client(dev); in set_fan_min() local
304 struct f75375_data *data = i2c_get_clientdata(client); in set_fan_min()
314 f75375_write16(client, F75375_REG_FAN_MIN(nr), data->fan_min[nr]); in set_fan_min()
323 struct i2c_client *client = to_i2c_client(dev); in set_fan_target() local
324 struct f75375_data *data = i2c_get_clientdata(client); in set_fan_target()
339 f75375_write16(client, F75375_REG_FAN_EXP(nr), data->fan_target[nr]); in set_fan_target()
348 struct i2c_client *client = to_i2c_client(dev); in set_pwm() local
349 struct f75375_data *data = i2c_get_clientdata(client); in set_pwm()
363 f75375_write_pwm(client, nr); in set_pwm()
376 static int set_pwm_enable_direct(struct i2c_client *client, int nr, int val) in set_pwm_enable_direct() argument
378 struct f75375_data *data = i2c_get_clientdata(client); in set_pwm_enable_direct()
384 fanmode = f75375_read8(client, F75375_REG_FAN_TIMER); in set_pwm_enable_direct()
433 f75375_write8(client, F75375_REG_FAN_TIMER, fanmode); in set_pwm_enable_direct()
436 f75375_write_pwm(client, nr); in set_pwm_enable_direct()
444 struct i2c_client *client = to_i2c_client(dev); in set_pwm_enable() local
445 struct f75375_data *data = i2c_get_clientdata(client); in set_pwm_enable()
454 err = set_pwm_enable_direct(client, nr, val); in set_pwm_enable()
463 struct i2c_client *client = to_i2c_client(dev); in set_pwm_mode() local
464 struct f75375_data *data = i2c_get_clientdata(client); in set_pwm_mode()
491 conf = f75375_read8(client, reg); in set_pwm_mode()
497 f75375_write8(client, reg, conf); in set_pwm_mode()
550 struct i2c_client *client = to_i2c_client(dev); in set_in_max() local
551 struct f75375_data *data = i2c_get_clientdata(client); in set_in_max()
562 f75375_write8(client, F75375_REG_VOLT_HIGH(nr), data->in_max[nr]); in set_in_max()
571 struct i2c_client *client = to_i2c_client(dev); in set_in_min() local
572 struct f75375_data *data = i2c_get_clientdata(client); in set_in_min()
583 f75375_write8(client, F75375_REG_VOLT_LOW(nr), data->in_min[nr]); in set_in_min()
619 struct i2c_client *client = to_i2c_client(dev); in set_temp_max() local
620 struct f75375_data *data = i2c_get_clientdata(client); in set_temp_max()
631 f75375_write8(client, F75375_REG_TEMP_HIGH(nr), data->temp_high[nr]); in set_temp_max()
640 struct i2c_client *client = to_i2c_client(dev); in set_temp_max_hyst() local
641 struct f75375_data *data = i2c_get_clientdata(client); in set_temp_max_hyst()
652 f75375_write8(client, F75375_REG_TEMP_HYST(nr), in set_temp_max_hyst()
767 static void f75375_init(struct i2c_client *client, struct f75375_data *data, in f75375_init() argument
776 conf = f75375_read8(client, F75375_REG_CONFIG1); in f75375_init()
777 mode = f75375_read8(client, F75375_REG_FAN_TIMER); in f75375_init()
819 set_pwm_enable_direct(client, 0, f75375s_pdata->pwm_enable[0]); in f75375_init()
820 set_pwm_enable_direct(client, 1, f75375s_pdata->pwm_enable[1]); in f75375_init()
826 f75375_write_pwm(client, nr); in f75375_init()
831 static int f75375_probe(struct i2c_client *client, in f75375_probe() argument
836 dev_get_platdata(&client->dev); in f75375_probe()
839 if (!i2c_check_functionality(client->adapter, in f75375_probe()
842 data = devm_kzalloc(&client->dev, sizeof(struct f75375_data), in f75375_probe()
847 i2c_set_clientdata(client, data); in f75375_probe()
851 err = sysfs_create_group(&client->dev.kobj, &f75375_group); in f75375_probe()
856 err = sysfs_chmod_file(&client->dev.kobj, in f75375_probe()
861 err = sysfs_chmod_file(&client->dev.kobj, in f75375_probe()
868 data->hwmon_dev = hwmon_device_register(&client->dev); in f75375_probe()
874 f75375_init(client, data, f75375s_pdata); in f75375_probe()
879 sysfs_remove_group(&client->dev.kobj, &f75375_group); in f75375_probe()
883 static int f75375_remove(struct i2c_client *client) in f75375_remove() argument
885 struct f75375_data *data = i2c_get_clientdata(client); in f75375_remove()
887 sysfs_remove_group(&client->dev.kobj, &f75375_group); in f75375_remove()
892 static int f75375_detect(struct i2c_client *client, in f75375_detect() argument
895 struct i2c_adapter *adapter = client->adapter; in f75375_detect()
900 vendid = f75375_read16(client, F75375_REG_VENDOR); in f75375_detect()
901 chipid = f75375_read16(client, F75375_CHIP_ID); in f75375_detect()
914 version = f75375_read8(client, F75375_REG_VERSION); in f75375_detect()