[U-Boot] [PATCH 18/24] mxc_i2c.c: finish adding CONFIG_I2C_MULTI_BUS support

Troy Kisky
2012-06-22T04:12:13Z

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
---
drivers/i2c/mxc_i2c.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)

diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c
index 339bb6f..5d18752 100644
--- a/drivers/i2c/mxc_i2c.c
+++ b/drivers/i2c/mxc_i2c.c
@@ -407,6 +407,23 @@ static void toggle_i2c(void *base)
p->toggle_fn(p->toggle_data);
}

+#ifdef CONFIG_I2C_MULTI_BUS
+unsigned int i2c_get_bus_num(void)
+{
+ return g_bus;
+}
+
+int i2c_set_bus_num(unsigned bus_idx)
+{
+ if (bus_idx >= ARRAY_SIZE(g_parms))
+ return -1;
+ if (!g_parms[bus_idx].base)
+ return -1;
+ g_bus = bus_idx;
+ return 0;
+}
+#endif
+
int i2c_read(uchar chip, uint addr, int alen, uchar *buf, int len)
{
return bus_i2c_read(get_base(), chip, addr, alen, buf, len);
--
1.7.9.5