Add support for more i2c devices.
[bertos.git] / bertos / drv / i2c.c
index c936837b7cdf9cbee48d9ed7eb4a237db50752f5..af3eabbb06055f5154fdcb6cad241068b8129133 100644 (file)
@@ -32,7 +32,6 @@
  *
  * \brief I2C generic driver functions (implementation).
  *
- * \version $Id$
  * \author Francesco Sacchi <batt@develer.com>
  */
 
@@ -89,3 +88,21 @@ bool i2c_recv(void *_buf, size_t count)
        return true;
 }
 
+
+void i2c_swSend(struct I2c *i2c, const void *_buf, size_t count)
+{
+       const uint8_t *buf = (const uint8_t *)_buf;
+
+       while (count--)
+               i2c_put(i2c, *buf++);
+}
+
+void i2c_swRecv(struct I2c *i2c, void *_buf, size_t count)
+{
+       uint8_t *buf = (uint8_t *)_buf;
+
+       while (count--)
+               *buf++ = i2c_get(i2c);
+}
+
+