| /linux/drivers/iio/adc/ |
| H A D | ab8500-gpadc.c | 255 ab8500_gpadc_get_channel(struct ab8500_gpadc *gpadc, u8 chan) in ab8500_gpadc_get_channel() argument 260 for (i = 0; i < gpadc->nchans; i++) { in ab8500_gpadc_get_channel() 261 ch = &gpadc->chans[i]; in ab8500_gpadc_get_channel() 265 if (i == gpadc->nchans) in ab8500_gpadc_get_channel() 277 static int ab8500_gpadc_ad_to_voltage(struct ab8500_gpadc *gpadc, in ab8500_gpadc_ad_to_voltage() argument 286 if (!gpadc->cal_data[AB8500_CAL_VMAIN].gain) { in ab8500_gpadc_ad_to_voltage() 293 res = (int) (ad_value * gpadc->cal_data[AB8500_CAL_VMAIN].gain + in ab8500_gpadc_ad_to_voltage() 294 gpadc->cal_data[AB8500_CAL_VMAIN].offset) / AB8500_GPADC_CALIB_SCALE; in ab8500_gpadc_ad_to_voltage() 304 if (!gpadc->cal_data[AB8500_CAL_BTEMP].gain) { in ab8500_gpadc_ad_to_voltage() 311 res = (int) (ad_value * gpadc->cal_data[AB8500_CAL_BTEMP].gain + in ab8500_gpadc_ad_to_voltage() [all …]
|
| H A D | twl6030-gpadc.c | 122 int (*calibrate)(struct twl6030_gpadc_data *gpadc); 385 struct twl6030_gpadc_data *gpadc = iio_priv(indio_dev); in twl6030_gpadc_irq_handler() local 387 complete(&gpadc->irq_complete); in twl6030_gpadc_irq_handler() 448 static int twl6030_gpadc_make_correction(struct twl6030_gpadc_data *gpadc, in twl6030_gpadc_make_correction() argument 451 const struct twl6030_ideal_code *ideal = gpadc->pdata->ideal; in twl6030_gpadc_make_correction() 455 i = twl6030_gpadc_lookup(ideal, channel, gpadc->pdata->nchannels); in twl6030_gpadc_make_correction() 457 gpadc->twl6030_cal_tbl[i].offset_error) / in twl6030_gpadc_make_correction() 458 gpadc->twl6030_cal_tbl[i].gain_error; in twl6030_gpadc_make_correction() 463 static int twl6030_gpadc_get_raw(struct twl6030_gpadc_data *gpadc, in twl6030_gpadc_get_raw() argument 466 u8 reg = gpadc->pdata->channel_to_reg(channel); in twl6030_gpadc_get_raw() [all …]
|
| H A D | da9150-gpadc.c | 86 struct da9150_gpadc *gpadc = data; in da9150_gpadc_irq() local 88 complete(&gpadc->complete); in da9150_gpadc_irq() 93 static int da9150_gpadc_read_adc(struct da9150_gpadc *gpadc, int hw_chan) in da9150_gpadc_read_adc() argument 98 mutex_lock(&gpadc->lock); in da9150_gpadc_read_adc() 101 da9150_reg_write(gpadc->da9150, DA9150_GPADC_MAN, in da9150_gpadc_read_adc() 106 try_wait_for_completion(&gpadc->complete); in da9150_gpadc_read_adc() 109 wait_for_completion_timeout(&gpadc->complete, msecs_to_jiffies(5)); in da9150_gpadc_read_adc() 112 da9150_bulk_read(gpadc->da9150, DA9150_GPADC_RES_A, 2, result_regs); in da9150_gpadc_read_adc() 114 mutex_unlock(&gpadc->lock); in da9150_gpadc_read_adc() 118 dev_err(gpadc->dev, "Timeout on channel %d of GPADC\n", in da9150_gpadc_read_adc() [all …]
|
| H A D | 88pm886-gpadc.c | 133 struct pm886_gpadc *gpadc = iio_priv(iio); in gpadc_get_raw() local 137 ret = regmap_bulk_read(gpadc->map, pm886_gpadc_regs[chan], &buf, sizeof(buf)); in gpadc_get_raw() 145 gpadc_set_bias(struct pm886_gpadc *gpadc, enum pm886_gpadc_channel chan, bool on) in gpadc_set_bias() argument 150 return regmap_assign_bits(gpadc->map, PM886_REG_GPADC_CONFIG(0x14), bits, on); in gpadc_set_bias() 157 struct pm886_gpadc *gpadc = iio_priv(iio); in gpadc_find_bias_current() local 164 ret = regmap_update_bits(gpadc->map, reg, GENMASK(3, 0), i); in gpadc_find_bias_current() 209 struct pm886_gpadc *gpadc = iio_priv(iio); in gpadc_get_resistance_ohm() local 213 ret = gpadc_set_bias(gpadc, chan->channel, true); in gpadc_get_resistance_ohm() 223 gpadc_set_bias(gpadc, chan->channel, false); in gpadc_get_resistance_ohm() 313 struct pm886_gpadc *gpadc; in pm886_gpadc_probe() local [all …]
|
| H A D | Makefile | 9 obj-$(CONFIG_88PM886_GPADC) += 88pm886-gpadc.o 10 obj-$(CONFIG_AB8500_GPADC) += ab8500-gpadc.o 63 obj-$(CONFIG_DA9150_GPADC) += da9150-gpadc.o 141 obj-$(CONFIG_SUN20I_GPADC) += sun20i-gpadc-iio.o 142 obj-$(CONFIG_SUN4I_GPADC) += sun4i-gpadc-iio.o 168 obj-$(CONFIG_TWL6030_GPADC) += twl6030-gpadc.o
|
| H A D | Kconfig | 23 called 88pm886-gpadc. 696 will be da9150-gpadc. 1596 called sun4i-gpadc-iio. 1607 called sun20i-gpadc-iio. 1911 called twl6030-gpadc.
|
| /linux/Documentation/devicetree/bindings/mfd/ |
| H A D | da9150.txt | 7 da9150-gpadc : General Purpose ADC 22 - da9150-gpadc: See ../iio/adc/da9150-gpadc.txt 35 gpadc: da9150-gpadc { 36 compatible = "dlg,da9150-gpadc"; 43 io-channels = <&gpadc 0>, 44 <&gpadc 2>, 45 <&gpadc 8>, 46 <&gpadc 5>;
|
| H A D | 88pm860x.txt | 59 marvell,88pm860x-gpadc-prebias = <1>; 60 marvell,88pm860x-gpadc-slot-cycle = <1>;
|
| /linux/arch/arm/boot/dts/st/ |
| H A D | ste-ab8500.dtsi | 12 io-channels = <&gpadc 0x02>, /* Battery temperature */ 13 <&gpadc 0x03>, /* Main charger voltage */ 14 <&gpadc 0x08>, /* Main battery voltage */ 15 <&gpadc 0x09>, /* VBUS */ 16 <&gpadc 0x0a>, /* Main charger current */ 17 <&gpadc 0x0b>, /* USB charger current */ 18 <&gpadc 0x0c>, /* Backup battery voltage */ 19 <&gpadc 0x0d>, /* Die temperature */ 20 <&gpadc 0x12>; /* Crystal temperature */ 52 gpadc: adc { label [all …]
|
| H A D | ste-ab8505.dtsi | 12 io-channels = <&gpadc 0x02>, /* Battery temperature */ 13 <&gpadc 0x08>, /* Main battery voltage */ 14 <&gpadc 0x09>, /* VBUS */ 15 <&gpadc 0x0b>, /* Charger current */ 16 <&gpadc 0x0c>, /* Backup battery voltage */ 17 <&gpadc 0x0d>; /* Die temperature */ 49 gpadc: adc { label 50 compatible = "stericsson,ab8500-gpadc"; 116 io-channels = <&gpadc 0x08>; 133 io-channels = <&gpadc 0x02>, [all …]
|
| H A D | ste-hrefv60plus.dtsi | 54 io-channels = <&gpadc 0x06>; /* AUX1 */ 63 io-channels = <&gpadc 0x07>; /* AUX2 */
|
| H A D | ste-href.dtsi | 40 io-channels = <&gpadc 0x02>; /* BatTemp */
|
| H A D | ste-ux500-samsung-janice.dts | 46 io-channels = <&gpadc 0x02>; /* BatTemp */ 320 io-channels = <&gpadc 0x07>;
|
| H A D | ste-snowball.dts | 44 io-channels = <&gpadc 0x02>; /* BatTemp */
|
| H A D | ste-ux500-samsung-golden.dts | 51 io-channels = <&gpadc 0x02>; /* BatTemp */
|
| H A D | ste-ux500-samsung-skomer.dts | 46 io-channels = <&gpadc 0x02>; /* BatTemp */
|
| H A D | ste-ux500-samsung-kyle.dts | 50 io-channels = <&gpadc 0x02>; /* BatTemp */
|
| /linux/arch/arm/boot/dts/ti/omap/ |
| H A D | twl6030.dtsi | 100 gpadc { 101 compatible = "ti,twl6030-gpadc";
|
| H A D | omap4-epson-embt2ws.dts | 222 io-channels = <&gpadc 10>; 311 gpadc: gpadc { label 312 compatible = "ti,twl6032-gpadc";
|
| H A D | omap5-board-common.dtsi | 416 gpadc: gpadc { label 417 compatible = "ti,palmas-gpadc";
|
| /linux/arch/arm64/boot/dts/allwinner/ |
| H A D | sun50i-h700-anbernic-rg35xx-h.dts | 62 io-channels = <&gpadc 0>; 95 &gpadc {
|
| H A D | sun50i-h616.dtsi | 700 gpadc: adc@5070000 { label 701 compatible = "allwinner,sun50i-h616-gpadc", 702 "allwinner,sun20i-d1-gpadc";
|
| /linux/arch/arm/boot/dts/marvell/ |
| H A D | pxa910-dkb.dts | 139 marvell,88pm860x-gpadc-prebias = <1>; 140 marvell,88pm860x-gpadc-slot-cycle = <1>;
|
| /linux/arch/riscv/boot/dts/allwinner/ |
| H A D | sunxi-d1s-t113.dtsi | 222 gpadc: adc@2009000 { label 223 compatible = "allwinner,sun20i-d1-gpadc";
|
| /linux/drivers/mfd/ |
| H A D | Makefile | 270 obj-$(CONFIG_MFD_SUN4I_GPADC) += sun4i-gpadc.o
|