ina               123 drivers/hwmon/ina3221.c static inline bool ina3221_is_enabled(struct ina3221_data *ina, int channel)
ina               125 drivers/hwmon/ina3221.c 	return pm_runtime_active(ina->pm_dev) &&
ina               126 drivers/hwmon/ina3221.c 	       (ina->reg_config & INA3221_CONFIG_CHx_EN(channel));
ina               165 drivers/hwmon/ina3221.c static inline int ina3221_wait_for_data(struct ina3221_data *ina)
ina               169 drivers/hwmon/ina3221.c 	wait = ina3221_reg_to_interval_us(ina->reg_config);
ina               172 drivers/hwmon/ina3221.c 	return regmap_field_read_poll_timeout(ina->fields[F_CVRF],
ina               176 drivers/hwmon/ina3221.c static int ina3221_read_value(struct ina3221_data *ina, unsigned int reg,
ina               182 drivers/hwmon/ina3221.c 	ret = regmap_read(ina->regmap, reg, &regval);
ina               202 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               207 drivers/hwmon/ina3221.c 		regval = INA3221_CONFIG_AVG(ina->reg_config);
ina               212 drivers/hwmon/ina3221.c 		*val = ina3221_reg_to_interval_us(ina->reg_config);
ina               223 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               232 drivers/hwmon/ina3221.c 		if (!ina3221_is_enabled(ina, channel))
ina               236 drivers/hwmon/ina3221.c 		if (ina->single_shot)
ina               237 drivers/hwmon/ina3221.c 			regmap_write(ina->regmap, INA3221_CONFIG,
ina               238 drivers/hwmon/ina3221.c 				     ina->reg_config);
ina               240 drivers/hwmon/ina3221.c 		ret = ina3221_wait_for_data(ina);
ina               244 drivers/hwmon/ina3221.c 		ret = ina3221_read_value(ina, reg, &regval);
ina               255 drivers/hwmon/ina3221.c 		*val = ina3221_is_enabled(ina, channel);
ina               273 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               274 drivers/hwmon/ina3221.c 	struct ina3221_input *input = &ina->inputs[channel];
ina               281 drivers/hwmon/ina3221.c 		if (!ina3221_is_enabled(ina, channel))
ina               285 drivers/hwmon/ina3221.c 		if (ina->single_shot)
ina               286 drivers/hwmon/ina3221.c 			regmap_write(ina->regmap, INA3221_CONFIG,
ina               287 drivers/hwmon/ina3221.c 				     ina->reg_config);
ina               289 drivers/hwmon/ina3221.c 		ret = ina3221_wait_for_data(ina);
ina               296 drivers/hwmon/ina3221.c 		ret = ina3221_read_value(ina, reg, &regval);
ina               308 drivers/hwmon/ina3221.c 		if (!ina3221_is_enabled(ina, channel)) {
ina               313 drivers/hwmon/ina3221.c 		ret = regmap_field_read(ina->fields[reg], &regval);
ina               325 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               334 drivers/hwmon/ina3221.c 		tmp = (ina->reg_config & ~INA3221_CONFIG_AVG_MASK) |
ina               336 drivers/hwmon/ina3221.c 		ret = regmap_write(ina->regmap, INA3221_CONFIG, tmp);
ina               341 drivers/hwmon/ina3221.c 		ina->reg_config = tmp;
ina               344 drivers/hwmon/ina3221.c 		tmp = ina3221_interval_ms_to_conv_time(ina->reg_config, val);
ina               350 drivers/hwmon/ina3221.c 		tmp = (ina->reg_config & ~tmp) |
ina               353 drivers/hwmon/ina3221.c 		ret = regmap_write(ina->regmap, INA3221_CONFIG, tmp);
ina               358 drivers/hwmon/ina3221.c 		ina->reg_config = tmp;
ina               368 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               369 drivers/hwmon/ina3221.c 	struct ina3221_input *input = &ina->inputs[channel];
ina               387 drivers/hwmon/ina3221.c 	return regmap_write(ina->regmap, reg, regval);
ina               392 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               394 drivers/hwmon/ina3221.c 	u16 config_old = ina->reg_config & mask;
ina               406 drivers/hwmon/ina3221.c 		ret = pm_runtime_get_sync(ina->pm_dev);
ina               414 drivers/hwmon/ina3221.c 	tmp = (ina->reg_config & ~mask) | (config & mask);
ina               415 drivers/hwmon/ina3221.c 	ret = regmap_write(ina->regmap, INA3221_CONFIG, tmp);
ina               420 drivers/hwmon/ina3221.c 	ina->reg_config = tmp;
ina               424 drivers/hwmon/ina3221.c 		pm_runtime_put_sync(ina->pm_dev);
ina               432 drivers/hwmon/ina3221.c 		pm_runtime_put_sync(ina->pm_dev);
ina               441 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               444 drivers/hwmon/ina3221.c 	mutex_lock(&ina->lock);
ina               462 drivers/hwmon/ina3221.c 	mutex_unlock(&ina->lock);
ina               470 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               473 drivers/hwmon/ina3221.c 	mutex_lock(&ina->lock);
ina               491 drivers/hwmon/ina3221.c 	mutex_unlock(&ina->lock);
ina               499 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               502 drivers/hwmon/ina3221.c 	*str = ina->inputs[index].label;
ina               511 drivers/hwmon/ina3221.c 	const struct ina3221_data *ina = drvdata;
ina               531 drivers/hwmon/ina3221.c 				input = &ina->inputs[channel - 1];
ina               601 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               603 drivers/hwmon/ina3221.c 	struct ina3221_input *input = &ina->inputs[channel];
ina               613 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               615 drivers/hwmon/ina3221.c 	struct ina3221_input *input = &ina->inputs[channel];
ina               663 drivers/hwmon/ina3221.c 				       struct ina3221_data *ina)
ina               678 drivers/hwmon/ina3221.c 	input = &ina->inputs[val];
ina               702 drivers/hwmon/ina3221.c static int ina3221_probe_from_dt(struct device *dev, struct ina3221_data *ina)
ina               712 drivers/hwmon/ina3221.c 	ina->single_shot = of_property_read_bool(np, "ti,single-shot");
ina               715 drivers/hwmon/ina3221.c 		ret = ina3221_probe_child_from_dt(dev, child, ina);
ina               729 drivers/hwmon/ina3221.c 	struct ina3221_data *ina;
ina               733 drivers/hwmon/ina3221.c 	ina = devm_kzalloc(dev, sizeof(*ina), GFP_KERNEL);
ina               734 drivers/hwmon/ina3221.c 	if (!ina)
ina               737 drivers/hwmon/ina3221.c 	ina->regmap = devm_regmap_init_i2c(client, &ina3221_regmap_config);
ina               738 drivers/hwmon/ina3221.c 	if (IS_ERR(ina->regmap)) {
ina               740 drivers/hwmon/ina3221.c 		return PTR_ERR(ina->regmap);
ina               744 drivers/hwmon/ina3221.c 		ina->fields[i] = devm_regmap_field_alloc(dev,
ina               745 drivers/hwmon/ina3221.c 							 ina->regmap,
ina               747 drivers/hwmon/ina3221.c 		if (IS_ERR(ina->fields[i])) {
ina               749 drivers/hwmon/ina3221.c 			return PTR_ERR(ina->fields[i]);
ina               754 drivers/hwmon/ina3221.c 		ina->inputs[i].shunt_resistor = INA3221_RSHUNT_DEFAULT;
ina               756 drivers/hwmon/ina3221.c 	ret = ina3221_probe_from_dt(dev, ina);
ina               763 drivers/hwmon/ina3221.c 	ina->reg_config = INA3221_CONFIG_DEFAULT;
ina               766 drivers/hwmon/ina3221.c 	if (ina->single_shot)
ina               767 drivers/hwmon/ina3221.c 		ina->reg_config &= ~INA3221_CONFIG_MODE_CONTINUOUS;
ina               771 drivers/hwmon/ina3221.c 		if (ina->inputs[i].disconnected)
ina               772 drivers/hwmon/ina3221.c 			ina->reg_config &= ~INA3221_CONFIG_CHx_EN(i);
ina               775 drivers/hwmon/ina3221.c 	ina->pm_dev = dev;
ina               776 drivers/hwmon/ina3221.c 	mutex_init(&ina->lock);
ina               777 drivers/hwmon/ina3221.c 	dev_set_drvdata(dev, ina);
ina               780 drivers/hwmon/ina3221.c 	pm_runtime_enable(ina->pm_dev);
ina               784 drivers/hwmon/ina3221.c 		if (ina->inputs[i].disconnected)
ina               787 drivers/hwmon/ina3221.c 		ret = pm_runtime_get_sync(ina->pm_dev);
ina               792 drivers/hwmon/ina3221.c 	hwmon_dev = devm_hwmon_device_register_with_info(dev, client->name, ina,
ina               804 drivers/hwmon/ina3221.c 	pm_runtime_disable(ina->pm_dev);
ina               805 drivers/hwmon/ina3221.c 	pm_runtime_set_suspended(ina->pm_dev);
ina               808 drivers/hwmon/ina3221.c 		pm_runtime_put_noidle(ina->pm_dev);
ina               809 drivers/hwmon/ina3221.c 	mutex_destroy(&ina->lock);
ina               816 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(&client->dev);
ina               819 drivers/hwmon/ina3221.c 	pm_runtime_disable(ina->pm_dev);
ina               820 drivers/hwmon/ina3221.c 	pm_runtime_set_suspended(ina->pm_dev);
ina               824 drivers/hwmon/ina3221.c 		pm_runtime_put_noidle(ina->pm_dev);
ina               826 drivers/hwmon/ina3221.c 	mutex_destroy(&ina->lock);
ina               833 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               837 drivers/hwmon/ina3221.c 	ret = regmap_read(ina->regmap, INA3221_CONFIG, &ina->reg_config);
ina               842 drivers/hwmon/ina3221.c 	ret = regmap_update_bits(ina->regmap, INA3221_CONFIG,
ina               848 drivers/hwmon/ina3221.c 	regcache_cache_only(ina->regmap, true);
ina               849 drivers/hwmon/ina3221.c 	regcache_mark_dirty(ina->regmap);
ina               856 drivers/hwmon/ina3221.c 	struct ina3221_data *ina = dev_get_drvdata(dev);
ina               859 drivers/hwmon/ina3221.c 	regcache_cache_only(ina->regmap, false);
ina               862 drivers/hwmon/ina3221.c 	ret = regmap_field_write(ina->fields[F_RST], true);
ina               869 drivers/hwmon/ina3221.c 	ret = regcache_sync(ina->regmap);
ina               874 drivers/hwmon/ina3221.c 	ret = regmap_write(ina->regmap, INA3221_CONFIG, ina->reg_config);
ina               776 drivers/staging/rtl8188eu/core/rtw_security.c static void bitwise_xor(u8 *ina, u8 *inb, u8 *out);
ina              1076 drivers/staging/rtl8188eu/core/rtw_security.c static void bitwise_xor(u8 *ina, u8 *inb, u8 *out)
ina              1081 drivers/staging/rtl8188eu/core/rtw_security.c 		out[i] = ina[i] ^ inb[i];
ina              1006 drivers/staging/rtl8712/rtl871x_security.c static void bitwise_xor(u8 *ina, u8 *inb, u8 *out)
ina              1011 drivers/staging/rtl8712/rtl871x_security.c 		out[i] = ina[i] ^ inb[i];
ina               916 drivers/staging/rtl8723bs/core/rtw_security.c static void bitwise_xor(u8 *ina, u8 *inb, u8 *out);
ina              1319 drivers/staging/rtl8723bs/core/rtw_security.c static void bitwise_xor(u8 *ina, u8 *inb, u8 *out)
ina              1324 drivers/staging/rtl8723bs/core/rtw_security.c 			out[i] = ina[i] ^ inb[i];