Lines Matching defs:spi
14 #include <linux/spi/spi.h>
34 static inline int m41t93_set_reg(struct spi_device *spi, u8 addr, u8 data)
42 return spi_write(spi, buf, sizeof(buf));
47 struct spi_device *spi = to_spi_device(dev);
59 dev_warn(&spi->dev, "unsupported date (before 2000-01-01).\n");
63 tmp = spi_w8r8(spi, M41T93_REG_FLAGS);
68 dev_warn(&spi->dev, "OF bit is set, resetting.\n");
69 m41t93_set_reg(spi, M41T93_REG_FLAGS, tmp & ~M41T93_FLAG_OF);
71 tmp = spi_w8r8(spi, M41T93_REG_FLAGS);
79 dev_warn(&spi->dev,
81 m41t93_set_reg(spi, M41T93_REG_ST_SEC, reset_osc);
83 m41t93_set_reg(spi, M41T93_REG_ST_SEC, reset_osc);
97 return spi_write(spi, buf, sizeof(buf));
103 struct spi_device *spi = to_spi_device(dev);
116 tmp = spi_w8r8(spi, M41T93_REG_ALM_HOUR_HT);
121 dev_dbg(&spi->dev, "HT bit is set, reenable clock update.\n");
122 m41t93_set_reg(spi, M41T93_REG_ALM_HOUR_HT,
126 tmp = spi_w8r8(spi, M41T93_REG_FLAGS);
132 dev_warn(&spi->dev, "OF bit is set, write time to restart.\n");
136 dev_warn(&spi->dev, "BL bit is set, replace battery.\n");
139 tmp = spi_write_then_read(spi, &start_addr, 1, buf, sizeof(buf));
170 static int m41t93_probe(struct spi_device *spi)
175 spi->bits_per_word = 8;
176 spi_setup(spi);
178 res = spi_w8r8(spi, M41T93_REG_WDAY);
180 dev_err(&spi->dev, "not found 0x%x.\n", res);
184 rtc = devm_rtc_device_register(&spi->dev, m41t93_driver.driver.name,
189 spi_set_drvdata(spi, rtc);
206 MODULE_ALIAS("spi:rtc-m41t93");