hx711_data        101 drivers/iio/adc/hx711.c static int hx711_cycle(struct hx711_data *hx711_data)
hx711_data        111 drivers/iio/adc/hx711.c 	gpiod_set_value(hx711_data->gpiod_pd_sck, 1);
hx711_data        118 drivers/iio/adc/hx711.c 	ndelay(hx711_data->data_ready_delay_ns);
hx711_data        126 drivers/iio/adc/hx711.c 	gpiod_set_value(hx711_data->gpiod_pd_sck, 0);
hx711_data        133 drivers/iio/adc/hx711.c 	ndelay(hx711_data->data_ready_delay_ns);
hx711_data        136 drivers/iio/adc/hx711.c 	return gpiod_get_value(hx711_data->gpiod_dout);
hx711_data        139 drivers/iio/adc/hx711.c static int hx711_read(struct hx711_data *hx711_data)
hx711_data        143 drivers/iio/adc/hx711.c 	int val = gpiod_get_value(hx711_data->gpiod_dout);
hx711_data        151 drivers/iio/adc/hx711.c 		ret = hx711_cycle(hx711_data);
hx711_data        158 drivers/iio/adc/hx711.c 	for (i = 0; i < hx711_get_gain_to_pulse(hx711_data->gain_set); i++)
hx711_data        159 drivers/iio/adc/hx711.c 		hx711_cycle(hx711_data);
hx711_data        164 drivers/iio/adc/hx711.c static int hx711_wait_for_ready(struct hx711_data *hx711_data)
hx711_data        174 drivers/iio/adc/hx711.c 		val = gpiod_get_value(hx711_data->gpiod_dout);
hx711_data        186 drivers/iio/adc/hx711.c static int hx711_reset(struct hx711_data *hx711_data)
hx711_data        189 drivers/iio/adc/hx711.c 	int val = gpiod_get_value(hx711_data->gpiod_dout);
hx711_data        201 drivers/iio/adc/hx711.c 		gpiod_set_value(hx711_data->gpiod_pd_sck, 1);
hx711_data        203 drivers/iio/adc/hx711.c 		gpiod_set_value(hx711_data->gpiod_pd_sck, 0);
hx711_data        205 drivers/iio/adc/hx711.c 		ret = hx711_wait_for_ready(hx711_data);
hx711_data        212 drivers/iio/adc/hx711.c 		ret = hx711_read(hx711_data);
hx711_data        220 drivers/iio/adc/hx711.c 		val = hx711_wait_for_ready(hx711_data);
hx711_data        226 drivers/iio/adc/hx711.c static int hx711_set_gain_for_channel(struct hx711_data *hx711_data, int chan)
hx711_data        231 drivers/iio/adc/hx711.c 		if (hx711_data->gain_set == 32) {
hx711_data        232 drivers/iio/adc/hx711.c 			hx711_data->gain_set = hx711_data->gain_chan_a;
hx711_data        234 drivers/iio/adc/hx711.c 			ret = hx711_read(hx711_data);
hx711_data        238 drivers/iio/adc/hx711.c 			ret = hx711_wait_for_ready(hx711_data);
hx711_data        243 drivers/iio/adc/hx711.c 		if (hx711_data->gain_set != 32) {
hx711_data        244 drivers/iio/adc/hx711.c 			hx711_data->gain_set = 32;
hx711_data        246 drivers/iio/adc/hx711.c 			ret = hx711_read(hx711_data);
hx711_data        250 drivers/iio/adc/hx711.c 			ret = hx711_wait_for_ready(hx711_data);
hx711_data        259 drivers/iio/adc/hx711.c static int hx711_reset_read(struct hx711_data *hx711_data, int chan)
hx711_data        268 drivers/iio/adc/hx711.c 	if (hx711_reset(hx711_data)) {
hx711_data        269 drivers/iio/adc/hx711.c 		dev_err(hx711_data->dev, "reset failed!");
hx711_data        273 drivers/iio/adc/hx711.c 	ret = hx711_set_gain_for_channel(hx711_data, chan);
hx711_data        277 drivers/iio/adc/hx711.c 	val = hx711_read(hx711_data);
hx711_data        286 drivers/iio/adc/hx711.c 	struct hx711_data *hx711_data = iio_priv(indio_dev);
hx711_data        290 drivers/iio/adc/hx711.c 		mutex_lock(&hx711_data->lock);
hx711_data        292 drivers/iio/adc/hx711.c 		*val = hx711_reset_read(hx711_data, chan->channel);
hx711_data        294 drivers/iio/adc/hx711.c 		mutex_unlock(&hx711_data->lock);
hx711_data        301 drivers/iio/adc/hx711.c 		mutex_lock(&hx711_data->lock);
hx711_data        303 drivers/iio/adc/hx711.c 		*val2 = hx711_get_gain_to_scale(hx711_data->gain_set);
hx711_data        305 drivers/iio/adc/hx711.c 		mutex_unlock(&hx711_data->lock);
hx711_data        319 drivers/iio/adc/hx711.c 	struct hx711_data *hx711_data = iio_priv(indio_dev);
hx711_data        332 drivers/iio/adc/hx711.c 		mutex_lock(&hx711_data->lock);
hx711_data        336 drivers/iio/adc/hx711.c 			mutex_unlock(&hx711_data->lock);
hx711_data        340 drivers/iio/adc/hx711.c 		if (gain != hx711_data->gain_set) {
hx711_data        341 drivers/iio/adc/hx711.c 			hx711_data->gain_set = gain;
hx711_data        343 drivers/iio/adc/hx711.c 				hx711_data->gain_chan_a = gain;
hx711_data        345 drivers/iio/adc/hx711.c 			ret = hx711_read(hx711_data);
hx711_data        347 drivers/iio/adc/hx711.c 				mutex_unlock(&hx711_data->lock);
hx711_data        352 drivers/iio/adc/hx711.c 		mutex_unlock(&hx711_data->lock);
hx711_data        372 drivers/iio/adc/hx711.c 	struct hx711_data *hx711_data = iio_priv(indio_dev);
hx711_data        375 drivers/iio/adc/hx711.c 	mutex_lock(&hx711_data->lock);
hx711_data        377 drivers/iio/adc/hx711.c 	memset(hx711_data->buffer, 0, sizeof(hx711_data->buffer));
hx711_data        383 drivers/iio/adc/hx711.c 		hx711_data->buffer[j] = hx711_reset_read(hx711_data,
hx711_data        388 drivers/iio/adc/hx711.c 	iio_push_to_buffers_with_timestamp(indio_dev, hx711_data->buffer,
hx711_data        391 drivers/iio/adc/hx711.c 	mutex_unlock(&hx711_data->lock);
hx711_data        475 drivers/iio/adc/hx711.c 	struct hx711_data *hx711_data;
hx711_data        480 drivers/iio/adc/hx711.c 	indio_dev = devm_iio_device_alloc(dev, sizeof(struct hx711_data));
hx711_data        486 drivers/iio/adc/hx711.c 	hx711_data = iio_priv(indio_dev);
hx711_data        487 drivers/iio/adc/hx711.c 	hx711_data->dev = dev;
hx711_data        489 drivers/iio/adc/hx711.c 	mutex_init(&hx711_data->lock);
hx711_data        495 drivers/iio/adc/hx711.c 	hx711_data->gpiod_pd_sck = devm_gpiod_get(dev, "sck", GPIOD_OUT_LOW);
hx711_data        496 drivers/iio/adc/hx711.c 	if (IS_ERR(hx711_data->gpiod_pd_sck)) {
hx711_data        498 drivers/iio/adc/hx711.c 					PTR_ERR(hx711_data->gpiod_pd_sck));
hx711_data        499 drivers/iio/adc/hx711.c 		return PTR_ERR(hx711_data->gpiod_pd_sck);
hx711_data        506 drivers/iio/adc/hx711.c 	hx711_data->gpiod_dout = devm_gpiod_get(dev, "dout", GPIOD_IN);
hx711_data        507 drivers/iio/adc/hx711.c 	if (IS_ERR(hx711_data->gpiod_dout)) {
hx711_data        509 drivers/iio/adc/hx711.c 					PTR_ERR(hx711_data->gpiod_dout));
hx711_data        510 drivers/iio/adc/hx711.c 		return PTR_ERR(hx711_data->gpiod_dout);
hx711_data        513 drivers/iio/adc/hx711.c 	hx711_data->reg_avdd = devm_regulator_get(dev, "avdd");
hx711_data        514 drivers/iio/adc/hx711.c 	if (IS_ERR(hx711_data->reg_avdd))
hx711_data        515 drivers/iio/adc/hx711.c 		return PTR_ERR(hx711_data->reg_avdd);
hx711_data        517 drivers/iio/adc/hx711.c 	ret = regulator_enable(hx711_data->reg_avdd);
hx711_data        533 drivers/iio/adc/hx711.c 	ret = regulator_get_voltage(hx711_data->reg_avdd);
hx711_data        544 drivers/iio/adc/hx711.c 	hx711_data->gain_set = 128;
hx711_data        545 drivers/iio/adc/hx711.c 	hx711_data->gain_chan_a = 128;
hx711_data        547 drivers/iio/adc/hx711.c 	hx711_data->clock_frequency = 400000;
hx711_data        549 drivers/iio/adc/hx711.c 					&hx711_data->clock_frequency);
hx711_data        555 drivers/iio/adc/hx711.c 	if (hx711_data->clock_frequency < 20000) {
hx711_data        557 drivers/iio/adc/hx711.c 		hx711_data->clock_frequency = 400000;
hx711_data        560 drivers/iio/adc/hx711.c 	hx711_data->data_ready_delay_ns =
hx711_data        561 drivers/iio/adc/hx711.c 				1000000000 / hx711_data->clock_frequency;
hx711_data        591 drivers/iio/adc/hx711.c 	regulator_disable(hx711_data->reg_avdd);
hx711_data        598 drivers/iio/adc/hx711.c 	struct hx711_data *hx711_data;
hx711_data        602 drivers/iio/adc/hx711.c 	hx711_data = iio_priv(indio_dev);
hx711_data        608 drivers/iio/adc/hx711.c 	regulator_disable(hx711_data->reg_avdd);