@@ -24,15 +24,44 @@
#include <common.h>
#include <i2c.h>
+#ifndef CONFIG_SOFT_I2C_I2C5_SCL
+#define CONFIG_SOFT_I2C_I2C5_SCL 0
+#endif
+#ifndef CONFIG_SOFT_I2C_I2C7_SCL
+#define CONFIG_SOFT_I2C_I2C7_SCL 0
+#endif
+#ifndef CONFIG_SOFT_I2C_I2C8_SCL
+#define CONFIG_SOFT_I2C_I2C8_SCL 0
+#endif
+#ifndef CONFIG_SOFT_I2C_I2C9_SCL
+#define CONFIG_SOFT_I2C_I2C9_SCL 0
+#endif
+#ifndef CONFIG_SOFT_I2C_I2C5_SDA
+#define CONFIG_SOFT_I2C_I2C5_SDA 0
+#endif
+#ifndef CONFIG_SOFT_I2C_I2C7_SDA
+#define CONFIG_SOFT_I2C_I2C7_SDA 0
+#endif
+#ifndef CONFIG_SOFT_I2C_I2C8_SDA
+#define CONFIG_SOFT_I2C_I2C8_SDA 0
+#endif
+#ifndef CONFIG_SOFT_I2C_I2C9_SDA
+#define CONFIG_SOFT_I2C_I2C9_SDA 0
+#endif
+
/* Handle multiple I2C buses instances */
int get_multi_scl_pin(void)
{
- unsigned int bus = I2C_GET_BUS();
+ unsigned int bus = i2c_get_bus_num();
switch (bus) {
case I2C_0: /* I2C_0 definition - compatibility layer */
case I2C_5:
return CONFIG_SOFT_I2C_I2C5_SCL;
+ case I2C_7:
+ return CONFIG_SOFT_I2C_I2C7_SCL;
+ case I2C_8:
+ return CONFIG_SOFT_I2C_I2C8_SCL;
case I2C_9:
return CONFIG_SOFT_I2C_I2C9_SCL;
default:
@@ -44,12 +73,16 @@ int get_multi_scl_pin(void)
int get_multi_sda_pin(void)
{
- unsigned int bus = I2C_GET_BUS();
+ unsigned int bus = i2c_get_bus_num();
switch (bus) {
case I2C_0: /* I2C_0 definition - compatibility layer */
case I2C_5:
return CONFIG_SOFT_I2C_I2C5_SDA;
+ case I2C_7:
+ return CONFIG_SOFT_I2C_I2C7_SDA;
+ case I2C_8:
+ return CONFIG_SOFT_I2C_I2C8_SDA;
case I2C_9:
return CONFIG_SOFT_I2C_I2C9_SDA;
default: