Lines Matching defs:spi
22 #include <linux/spi/spi.h>
36 struct spi_device *spi;
69 static int max1118_read(struct spi_device *spi, int channel)
71 struct iio_dev *indio_dev = spi_get_drvdata(spi);
106 ret = spi_sync_transfer(spi, xfers + 1, 2);
108 ret = spi_sync_transfer(spi, xfers, 3);
116 static int max1118_get_vref_mV(struct spi_device *spi)
118 struct iio_dev *indio_dev = spi_get_drvdata(spi);
120 const struct spi_device_id *id = spi_get_device_id(spi);
147 *val = max1118_read(adc->spi, chan->channel);
154 *val = max1118_get_vref_mV(adc->spi);
183 int ret = max1118_read(adc->spi, scan_chan->channel);
186 dev_warn(&adc->spi->dev,
204 static int max1118_probe(struct spi_device *spi)
208 const struct spi_device_id *id = spi_get_device_id(spi);
211 indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*adc));
216 adc->spi = spi;
220 adc->reg = devm_regulator_get(&spi->dev, "vref");
222 dev_err(&spi->dev, "failed to get vref regulator\n");
230 spi_set_drvdata(spi, indio_dev);
232 indio_dev->name = spi_get_device_id(spi)->name;
244 max1118_read(spi, 0);
266 static int max1118_remove(struct spi_device *spi)
268 struct iio_dev *indio_dev = spi_get_drvdata(spi);
270 const struct spi_device_id *id = spi_get_device_id(spi);
286 MODULE_DEVICE_TABLE(spi, max1118_id);