Lines Matching refs:data

96 	struct sbsm_data *data = power_supply_get_drvdata(psy);
101 regval = sbsm_read_word(data->client, SBSM_CMD_BATSYSSTATECONT);
108 regval = sbsm_read_word(data->client, SBSM_CMD_BATSYSSTATE);
118 if (data->is_ltc1760) {
120 regval = sbsm_read_word(data->client, SBSM_CMD_LTC);
138 struct sbsm_data *data = power_supply_get_drvdata(psy);
140 return (psp == POWER_SUPPLY_PROP_CHARGE_TYPE) && data->is_ltc1760;
147 struct sbsm_data *data = power_supply_get_drvdata(psy);
154 if (!data->is_ltc1760)
158 ret = sbsm_write_word(data->client, SBSM_CMD_LTC, regval);
174 struct sbsm_data *data = i2c_mux_priv(muxc);
175 struct device *dev = &data->client->dev;
179 if (data->cur_chan == chan)
184 ret = sbsm_write_word(data->client, SBSM_CMD_BATSYSSTATE, reg);
188 data->cur_chan = chan;
195 struct sbsm_data *data = gpiochip_get_data(gc);
198 ret = sbsm_read_word(data->client, SBSM_CMD_BATSYSSTATE);
267 static int sbsm_gpio_setup(struct sbsm_data *data)
269 struct gpio_chip *gc = &data->chip;
270 struct i2c_client *client = data->client;
280 data->last_state = ret;
285 data->last_state_cont = ret;
296 ret = devm_gpiochip_add_data(dev, gc, data);
312 static void sbsm_del_mux_adapter(void *data)
314 struct sbsm_data *sbsm = data;
322 struct sbsm_data *data;
335 data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL);
336 if (!data)
339 i2c_set_clientdata(client, data);
341 data->client = client;
342 data->is_ltc1760 = !!strstr(id->name, "ltc1760");
347 data->supported_bats = ret & SBSM_MASK_BAT_SUPPORTED;
348 data->muxc = i2c_mux_alloc(adapter, dev, SBSM_MAX_BATS, 0,
350 if (!data->muxc)
352 data->muxc->priv = data;
354 ret = devm_add_action_or_reset(dev, sbsm_del_mux_adapter, data);
360 if (data->supported_bats & BIT(i)) {
361 ret = i2c_mux_add_adapter(data->muxc, 0, i + 1, 0);
377 ret = sbsm_gpio_setup(data);
381 psy_cfg.drv_data = data;
383 data->psy = devm_power_supply_register(dev, psy_desc, &psy_cfg);
384 if (IS_ERR(data->psy))
385 return dev_err_probe(dev, PTR_ERR(data->psy),