Lines Matching defs:spi
16 #include <linux/spi/spi.h>
39 struct spi_device *spi = dev_get_drvdata(dev);
49 status = spi_write_then_read(spi, buf, 2,
68 return spi_write_then_read(spi, buf, sizeof(buf),
74 struct spi_device *spi = dev_get_drvdata(dev);
82 status = spi_write_then_read(spi, &addr, sizeof(addr),
104 static int ds1302_probe(struct spi_device *spi)
116 if (spi->bits_per_word && (spi->bits_per_word != 8)) {
117 dev_err(&spi->dev, "bad word length\n");
119 } else if (spi->max_speed_hz > 2000000) {
120 dev_err(&spi->dev, "speed is too high\n");
122 } else if (spi->mode & SPI_CPHA) {
123 dev_err(&spi->dev, "bad mode\n");
128 status = spi_write_then_read(spi, &addr, sizeof(addr), buf, 1);
130 dev_err(&spi->dev, "control register read error %d\n",
136 status = spi_write_then_read(spi, &addr, sizeof(addr), buf, 1);
138 dev_err(&spi->dev, "control register read error %d\n",
144 dev_err(&spi->dev, "junk in control register\n");
153 status = spi_write_then_read(spi, buf, 2, NULL, 0);
155 dev_err(&spi->dev, "control register write error %d\n",
161 status = spi_write_then_read(spi, &addr, sizeof(addr), buf, 1);
163 dev_err(&spi->dev,
170 dev_err(&spi->dev, "failed to detect chip\n");
175 spi_set_drvdata(spi, spi);
177 rtc = devm_rtc_device_register(&spi->dev, "ds1302",
181 dev_err(&spi->dev, "error %d registering rtc\n", status);
200 MODULE_DEVICE_TABLE(spi, ds1302_spi_ids);