Lines Matching defs:spi
12 #include <linux/spi/spi.h>
27 * ADI High-Speed ADC common spi interface registers
119 struct spi_device *spi;
127 static int ad9467_spi_read(struct spi_device *spi, unsigned int reg)
135 ret = spi_write_then_read(spi,
145 static int ad9467_spi_write(struct spi_device *spi, unsigned int reg,
154 return spi_write(spi, buf, ARRAY_SIZE(buf));
161 struct spi_device *spi = st->spi;
165 ret = ad9467_spi_write(spi, reg, writeval);
168 return ad9467_spi_write(spi, AN877_ADC_REG_TRANSFER,
172 ret = ad9467_spi_read(spi, reg);
280 ret = ad9467_spi_read(st->spi, AN877_ADC_REG_VREF);
315 ret = ad9467_spi_write(st->spi, AN877_ADC_REG_VREF,
320 return ad9467_spi_write(st->spi, AN877_ADC_REG_TRANSFER,
359 dev_warn(&st->spi->dev,
390 static int ad9467_outputmode_set(struct spi_device *spi, unsigned int mode)
394 ret = ad9467_spi_write(spi, AN877_ADC_REG_OUTPUT_MODE, mode);
398 return ad9467_spi_write(spi, AN877_ADC_REG_TRANSFER,
408 st->scales = devm_kmalloc_array(&st->spi->dev, info->num_scales,
426 return ad9467_outputmode_set(st->spi, st->output_mode);
444 static int ad9467_probe(struct spi_device *spi)
452 info = of_device_get_match_data(&spi->dev);
456 conv = devm_adi_axi_adc_conv_register(&spi->dev, sizeof(*st));
461 st->spi = spi;
463 st->clk = devm_clk_get_enabled(&spi->dev, "adc-clk");
467 st->pwrdown_gpio = devm_gpiod_get_optional(&spi->dev, "powerdown",
472 ret = ad9467_reset(&spi->dev);
476 spi_set_drvdata(spi, st);
484 id = ad9467_spi_read(spi, AN877_ADC_REG_CHIP_ID);
486 dev_err(&spi->dev, "Mismatch CHIP_ID, got 0x%X, expected 0x%X\n",