Lines Matching refs:client

250 	struct i2c_client *client;
274 * Release our data struct when we're detached from the i2c client *and* all
283 static u8 w83793_read_value(struct i2c_client *client, u16 reg);
284 static int w83793_write_value(struct i2c_client *client, u16 reg, u8 value);
285 static int w83793_probe(struct i2c_client *client);
286 static int w83793_detect(struct i2c_client *client,
288 static void w83793_remove(struct i2c_client *client);
289 static void w83793_init_client(struct i2c_client *client);
374 struct i2c_client *client = to_i2c_client(dev);
375 struct w83793_data *data = i2c_get_clientdata(client);
392 data->beeps[index] = w83793_read_value(client, W83793_REG_BEEP(index));
395 w83793_write_value(client, W83793_REG_BEEP(index), data->beeps[index]);
412 struct i2c_client *client = to_i2c_client(dev);
413 struct w83793_data *data = i2c_get_clientdata(client);
425 data->beep_enable = w83793_read_value(client, W83793_REG_OVT_BEEP)
428 w83793_write_value(client, W83793_REG_OVT_BEEP, data->beep_enable);
440 struct i2c_client *client = to_i2c_client(dev);
441 struct w83793_data *data = i2c_get_clientdata(client);
453 reg = w83793_read_value(client, W83793_REG_CLR_CHASSIS);
454 w83793_write_value(client, W83793_REG_CLR_CHASSIS, reg | 0x80);
487 struct i2c_client *client = to_i2c_client(dev);
488 struct w83793_data *data = i2c_get_clientdata(client);
499 w83793_write_value(client, W83793_REG_FAN_MIN(index),
501 w83793_write_value(client, W83793_REG_FAN_MIN(index) + 1, val & 0xff);
529 struct i2c_client *client = to_i2c_client(dev);
530 struct w83793_data *data = i2c_get_clientdata(client);
546 w83793_write_value(client, W83793_REG_PWM_STOP_TIME(index),
551 w83793_read_value(client, W83793_REG_PWM(index, nr)) & 0xc0;
553 w83793_write_value(client, W83793_REG_PWM(index, nr),
586 struct i2c_client *client = to_i2c_client(dev);
587 struct w83793_data *data = i2c_get_clientdata(client);
597 w83793_write_value(client, W83793_REG_TEMP[index][nr],
647 struct i2c_client *client = to_i2c_client(dev);
648 struct w83793_data *data = i2c_get_clientdata(client);
675 w83793_read_value(client, W83793_REG_TEMP_MODE[index]);
678 w83793_write_value(client, W83793_REG_TEMP_MODE[index],
717 struct i2c_client *client = to_i2c_client(dev);
718 struct w83793_data *data = i2c_get_clientdata(client);
729 w83793_read_value(client, W83793_REG_PWM_DEFAULT) & 0xc0;
731 w83793_write_value(client, W83793_REG_PWM_DEFAULT,
736 w83793_write_value(client, W83793_REG_PWM_UPTIME,
741 w83793_write_value(client, W83793_REG_PWM_DOWNTIME,
745 w83793_read_value(client, W83793_REG_TEMP_CRITICAL) & 0x80;
747 w83793_write_value(client, W83793_REG_TEMP_CRITICAL,
818 struct i2c_client *client = to_i2c_client(dev);
819 struct w83793_data *data = i2c_get_clientdata(client);
830 w83793_write_value(client, W83793_REG_TEMP_FAN_MAP(index), val);
835 w83793_read_value(client, W83793_REG_PWM_ENABLE);
840 w83793_write_value(client, W83793_REG_PWM_ENABLE,
848 w83793_read_value(client, W83793_REG_TEMP_CRUISE(index));
852 w83793_write_value(client, W83793_REG_TEMP_CRUISE(index),
858 w83793_read_value(client, W83793_REG_TEMP_TOL(i));
862 w83793_write_value(client, W83793_REG_TEMP_TOL(i),
886 struct i2c_client *client = to_i2c_client(dev);
887 struct w83793_data *data = i2c_get_clientdata(client);
902 w83793_read_value(client, W83793_REG_SF2_PWM(index, nr)) & 0xc0;
904 w83793_write_value(client, W83793_REG_SF2_PWM(index, nr),
927 struct i2c_client *client = to_i2c_client(dev);
928 struct w83793_data *data = i2c_get_clientdata(client);
943 w83793_read_value(client, W83793_REG_SF2_TEMP(index, nr)) & 0x80;
945 w83793_write_value(client, W83793_REG_SF2_TEMP(index, nr),
979 struct i2c_client *client = to_i2c_client(dev);
980 struct w83793_data *data = i2c_get_clientdata(client);
998 w83793_read_value(client, W83793_REG_IN_LOW_BITS[nr]);
1001 w83793_write_value(client, W83793_REG_IN_LOW_BITS[nr],
1006 w83793_write_value(client, W83793_REG_IN[index][nr],
1174 static void w83793_init_client(struct i2c_client *client)
1177 w83793_write_value(client, W83793_REG_CONFIG, 0x80);
1180 w83793_write_value(client, W83793_REG_CONFIG,
1181 w83793_read_value(client, W83793_REG_CONFIG) | 0x01);
1199 if (!data->client) {
1207 w83793_write_value(data->client, W83793_REG_WDT_TIMEOUT,
1233 if (!data->client) {
1239 w83793_write_value(data->client, W83793_REG_WDT_TIMEOUT,
1252 if (!data->client) {
1258 w83793_write_value(data->client, W83793_REG_WDT_TIMEOUT,
1262 w83793_write_value(data->client, W83793_REG_WDT_LOCK, 0x55);
1274 if (!data->client) {
1280 w83793_write_value(data->client, W83793_REG_WDT_LOCK, 0xAA);
1341 dev_crit(&data->client->dev,
1498 static void w83793_remove(struct i2c_client *client)
1500 struct w83793_data *data = i2c_get_clientdata(client);
1501 struct device *dev = &client->dev;
1509 dev_warn(&client->dev,
1510 "i2c client detached with watchdog open! "
1519 /* Tell the watchdog code the client is gone */
1521 data->client = NULL;
1526 tmp = w83793_read_value(client, W83793_REG_CONFIG);
1527 w83793_write_value(client, W83793_REG_CONFIG, tmp & ~0x04);
1560 w83793_detect_subclients(struct i2c_client *client)
1563 int address = client->addr;
1565 struct i2c_adapter *adapter = client->adapter;
1572 dev_err(&client->dev,
1579 w83793_write_value(client, W83793_REG_I2C_SUBADDR,
1584 tmp = w83793_read_value(client, W83793_REG_I2C_SUBADDR);
1587 dev_err(&client->dev,
1593 devm_i2c_new_dummy_device(&client->dev, adapter, 0x48 + (tmp & 0x7));
1596 devm_i2c_new_dummy_device(&client->dev, adapter, 0x48 + ((tmp >> 4) & 0x7));
1602 static int w83793_detect(struct i2c_client *client,
1606 struct i2c_adapter *adapter = client->adapter;
1607 unsigned short address = client->addr;
1612 bank = i2c_smbus_read_byte_data(client, W83793_REG_BANKSEL);
1616 if (tmp != i2c_smbus_read_byte_data(client, W83793_REG_VENDORID)) {
1626 && i2c_smbus_read_byte_data(client, W83793_REG_I2C_ADDR) !=
1633 chip_id = i2c_smbus_read_byte_data(client, W83793_REG_CHIPID);
1642 static int w83793_probe(struct i2c_client *client)
1644 struct device *dev = &client->dev;
1660 i2c_set_clientdata(client, data);
1661 data->bank = i2c_smbus_read_byte_data(client, W83793_REG_BANKSEL);
1668 * Store client pointer in our data struct for watchdog usage
1669 * (where the client is found through a data ptr instead of the
1672 data->client = client;
1674 err = w83793_detect_subclients(client);
1679 w83793_init_client(client);
1687 tmp = w83793_read_value(client, W83793_REG_MFC);
1688 val = w83793_read_value(client, W83793_REG_FANIN_CTRL);
1730 tmp = w83793_read_value(client, W83793_REG_FANIN_SEL);
1745 tmp = w83793_read_value(client, W83793_REG_TEMP_MODE[0]);
1755 tmp = w83793_read_value(client, W83793_REG_TEMP_MODE[1]);
1840 dev_err(&client->dev,
1850 tmp = w83793_read_value(client, W83793_REG_CONFIG);
1851 w83793_write_value(client, W83793_REG_CONFIG, tmp | 0x04);
1858 w83793_read_value(data->client, W83793_REG_WDT_STATUS) & 0x01;
1882 dev_err(&client->dev,
1889 dev_info(&client->dev,
1896 dev_warn(&client->dev,
1938 struct i2c_client *client = to_i2c_client(dev);
1939 struct w83793_data *data = i2c_get_clientdata(client);
1953 w83793_read_value(client, W83793_REG_IN[j][i]);
1956 w83793_read_value(client, W83793_REG_IN_LOW_BITS[i]);
1964 w83793_read_value(client, W83793_REG_FAN_MIN(i)) << 8;
1966 w83793_read_value(client, W83793_REG_FAN_MIN(i) + 1);
1973 w83793_read_value(client, W83793_REG_TEMP_FAN_MAP(i));
1976 w83793_read_value(client, W83793_REG_TEMP[i][j]);
1979 w83793_read_value(client, W83793_REG_TEMP_CRUISE(i));
1982 w83793_read_value(client, W83793_REG_SF2_PWM(i, j));
1984 w83793_read_value(client,
1991 w83793_read_value(client, W83793_REG_TEMP_MODE[i]);
1995 w83793_read_value(client, W83793_REG_TEMP_TOL(i));
2002 w83793_read_value(client, W83793_REG_PWM(i, PWM_NONSTOP));
2004 w83793_read_value(client, W83793_REG_PWM(i, PWM_START));
2006 w83793_read_value(client, W83793_REG_PWM_STOP_TIME(i));
2009 data->pwm_default = w83793_read_value(client, W83793_REG_PWM_DEFAULT);
2010 data->pwm_enable = w83793_read_value(client, W83793_REG_PWM_ENABLE);
2011 data->pwm_uptime = w83793_read_value(client, W83793_REG_PWM_UPTIME);
2012 data->pwm_downtime = w83793_read_value(client, W83793_REG_PWM_DOWNTIME);
2014 w83793_read_value(client, W83793_REG_TEMP_CRITICAL);
2015 data->beep_enable = w83793_read_value(client, W83793_REG_OVT_BEEP);
2018 data->beeps[i] = w83793_read_value(client, W83793_REG_BEEP(i));
2025 struct i2c_client *client = to_i2c_client(dev);
2026 struct w83793_data *data = i2c_get_clientdata(client);
2038 w83793_read_value(client, W83793_REG_IN[i][IN_READ]);
2041 w83793_read_value(client, W83793_REG_IN_LOW_BITS[IN_READ]);
2047 w83793_read_value(client, W83793_REG_FAN(i)) << 8;
2049 w83793_read_value(client, W83793_REG_FAN(i) + 1);
2056 w83793_read_value(client, W83793_REG_TEMP[i][TEMP_READ]);
2060 w83793_read_value(client, W83793_REG_TEMP_LOW_BITS);
2065 w83793_read_value(client,
2071 w83793_read_value(client, W83793_REG_ALARM(i));
2073 data->vid[0] = w83793_read_value(client, W83793_REG_VID_INA);
2075 data->vid[1] = w83793_read_value(client, W83793_REG_VID_INB);
2089 static u8 w83793_read_value(struct i2c_client *client, u16 reg)
2091 struct w83793_data *data = i2c_get_clientdata(client);
2098 (client, W83793_REG_BANKSEL, new_bank) >= 0)
2101 dev_err(&client->dev,
2109 res = i2c_smbus_read_byte_data(client, reg & 0xff);
2115 static int w83793_write_value(struct i2c_client *client, u16 reg, u8 value)
2117 struct w83793_data *data = i2c_get_clientdata(client);
2123 res = i2c_smbus_write_byte_data(client, W83793_REG_BANKSEL,
2126 dev_err(&client->dev,
2135 res = i2c_smbus_write_byte_data(client, reg & 0xff, value);