summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/imx-common/mxc_i2c.h
diff options
context:
space:
mode:
authorTom Rini <trini@ti.com>2014-09-17 18:01:04 -0400
committerTom Rini <trini@ti.com>2014-09-17 18:01:04 -0400
commite38b15b0619f9a8b869896229355808f494fb2ac (patch)
tree2048b9e715f1d6f76b298bf404d4b2e293ae3b0c /arch/arm/include/asm/imx-common/mxc_i2c.h
parent1ee30aeed47724eb7c8f145f064b8d03cd294808 (diff)
parentc292adae170fa8c27dca75963bdb0a9afc640e57 (diff)
downloadtalos-obmc-uboot-e38b15b0619f9a8b869896229355808f494fb2ac.tar.gz
talos-obmc-uboot-e38b15b0619f9a8b869896229355808f494fb2ac.zip
Merge branch 'master' of git://git.denx.de/u-boot-arm
Diffstat (limited to 'arch/arm/include/asm/imx-common/mxc_i2c.h')
-rw-r--r--arch/arm/include/asm/imx-common/mxc_i2c.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/arch/arm/include/asm/imx-common/mxc_i2c.h b/arch/arm/include/asm/imx-common/mxc_i2c.h
index 47a9edc81b..182c2f397f 100644
--- a/arch/arm/include/asm/imx-common/mxc_i2c.h
+++ b/arch/arm/include/asm/imx-common/mxc_i2c.h
@@ -19,6 +19,39 @@ struct i2c_pads_info {
struct i2c_pin_ctrl sda;
};
+#if defined(CONFIG_MX6QDL)
+#define I2C_PADS(name, scl_i2c, scl_gpio, scl_gp, sda_i2c, sda_gpio, sda_gp) \
+ struct i2c_pads_info mx6q_##name = { \
+ .scl = { \
+ .i2c_mode = MX6Q_##scl_i2c, \
+ .gpio_mode = MX6Q_##scl_gpio, \
+ .gp = scl_gp, \
+ }, \
+ .sda = { \
+ .i2c_mode = MX6Q_##sda_i2c, \
+ .gpio_mode = MX6Q_##sda_gpio, \
+ .gp = sda_gp, \
+ } \
+ }; \
+ struct i2c_pads_info mx6s_##name = { \
+ .scl = { \
+ .i2c_mode = MX6DL_##scl_i2c, \
+ .gpio_mode = MX6DL_##scl_gpio, \
+ .gp = scl_gp, \
+ }, \
+ .sda = { \
+ .i2c_mode = MX6DL_##sda_i2c, \
+ .gpio_mode = MX6DL_##sda_gpio, \
+ .gp = sda_gp, \
+ } \
+ };
+
+
+#define I2C_PADS_INFO(name) \
+ (is_cpu_type(MXC_CPU_MX6Q) || is_cpu_type(MXC_CPU_MX6D)) ? \
+ &mx6q_##name : &mx6s_##name
+#endif
+
void setup_i2c(unsigned i2c_index, int speed, int slave_addr,
struct i2c_pads_info *p);
void bus_i2c_init(void *base, int speed, int slave_addr,
OpenPOWER on IntegriCloud