]> git.sur5r.net Git - u-boot/blobdiff - include/i2c.h
USB Storage, add meaningful return value
[u-boot] / include / i2c.h
index 97e006163a9ab8261442ce75661b8f560cadd9d2..6e6c84531277e7683ac3dc98e05bee929054df06 100644 (file)
  */
 #define I2C_RXTX_LEN   128     /* maximum tx/rx buffer length */
 
+#if defined(CONFIG_I2C_MULTI_BUS)
+#define CFG_MAX_I2C_BUS                2
+#define I2C_GET_BUS()          i2c_get_bus_num()
+#define I2C_SET_BUS(a)         i2c_set_bus_num(a)
+#else
+#define CFG_MAX_I2C_BUS                1
+#define I2C_GET_BUS()          0
+#define I2C_SET_BUS(a)
+#endif
+
+/* define the I2C bus number for RTC and DTT if not already done */
+#if !defined(CFG_RTC_BUS_NUM)
+#define CFG_RTC_BUS_NUM                0
+#endif
+#if !defined(CFG_DTT_BUS_NUM)
+#define CFG_DTT_BUS_NUM                0
+#endif
+#if !defined(CFG_SPD_BUS_NUM)
+#define CFG_SPD_BUS_NUM                0
+#endif
+
 /*
  * Initialization, must be called once on start up, may be called
  * repeatedly to change the speed and slave addresses.
@@ -97,7 +118,7 @@ void  i2c_reg_write(uchar chip, uchar reg, uchar val);
  *     Returns: 0 on success, not 0 on failure
  *
  */
-int            i2c_set_bus_num(uchar bus);
+int i2c_set_bus_num(unsigned int bus);
 
 /*
  * i2c_get_bus_num:
@@ -105,7 +126,7 @@ int         i2c_set_bus_num(uchar bus);
  *  Returns index of currently active I2C bus.  Zero-based.
  */
 
-uchar  i2c_get_bus_num(void);
+unsigned int i2c_get_bus_num(void);
 
 /*
  * i2c_set_bus_speed:
@@ -117,7 +138,7 @@ uchar       i2c_get_bus_num(void);
  *     Returns: 0 on success, not 0 on failure
  *
  */
-int            i2c_set_bus_speed(int);
+int i2c_set_bus_speed(unsigned int);
 
 /*
  * i2c_get_bus_speed:
@@ -125,6 +146,6 @@ int         i2c_set_bus_speed(int);
  *  Returns speed of currently active I2C bus in Hz
  */
 
-int            i2c_get_bus_speed(void);
+unsigned int i2c_get_bus_speed(void);
 
 #endif /* _I2C_H_ */