Signed-off-by: Sergey Kubushyn <[email protected]>
---
diff -purN u-boot-i2c.orig/include/configs/MHPC.h 
u-boot-i2c/include/configs/MHPC.h
--- u-boot-i2c.orig/include/configs/MHPC.h      2009-02-12 10:43:41.000000000 
-0800
+++ u-boot-i2c/include/configs/MHPC.h   2009-02-12 10:46:00.000000000 -0800
@@ -72,7 +72,12 @@
 
 /* enable I2C and select the hardware/software driver */
 #undef CONFIG_HARD_I2C                 /* I2C with hardware support    */
-#define CONFIG_SOFT_I2C                1       /* I2C bit-banged               
*/
+#define CONFIG_NEW_I2C
+#define CONFIG_SOFT_I2C                        /* I2C bit-banged */
+#define I2C_SOFT_DECLARATIONS          I2C_SOFT_DEFS
+#define CONFIG_SYS_SOFT_I2C_SPEED      50000
+#define CONFIG_SYS_SOFT_I2C_SLAVE      0xFE
+#define CONFIG_SYS_I2C_ADAPTERS                {&soft_i2c_adap[0]}
 /*
  * Software (bit-bang) I2C driver configuration
  */
@@ -89,8 +94,6 @@
                        else    immr->im_cpm.cp_pbdat &= ~PB_SCL
 #define I2C_DELAY      udelay(5)       /* 1/4 I2C clock duration */
 
-#define CONFIG_SYS_I2C_SPEED                   50000
-#define CONFIG_SYS_I2C_SLAVE                   0xFE
 #define CONFIG_SYS_I2C_EEPROM_ADDR             0x50    /* EEPROM X24C04        
        */
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN         1       /* bytes of address     
        */
 /* mask of address bits that overflow into the "EEPROM chip address"   */
diff -purN u-boot-i2c.orig/include/configs/MPC8313ERDB.h 
u-boot-i2c/include/configs/MPC8313ERDB.h
--- u-boot-i2c.orig/include/configs/MPC8313ERDB.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8313ERDB.h    2009-02-12 10:46:00.000000000 
-0800
@@ -318,15 +318,17 @@
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* I2C */
-#define CONFIG_HARD_I2C                        /* I2C with hardware support*/
+#define CONFIG_NEW_I2C
+#define CONFIG_SYS_NUM_I2C_ADAPTERS    2
 #define CONFIG_FSL_I2C
-#define CONFIG_I2C_MULTI_BUS
-#define CONFIG_I2C_CMD_TREE
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address 
*/
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {{0,0x69}} /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
-#define CONFIG_SYS_I2C2_OFFSET         0x3100
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_FSL_I2C2_SPEED      400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C2_SLAVE      0x7F
+#define CONFIG_SYS_FSL_I2C2_OFFSET     0x3100
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0], 
&fsl_i2c_adap[1]}
+#define CONFIG_SYS_I2C_NOPROBES                {{0,0x69}} /* Don't probe these 
addrs */
 
 /*
  * General PCI
diff -purN u-boot-i2c.orig/include/configs/MPC8315ERDB.h 
u-boot-i2c/include/configs/MPC8315ERDB.h
--- u-boot-i2c.orig/include/configs/MPC8315ERDB.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8315ERDB.h    2009-02-12 10:46:00.000000000 
-0800
@@ -272,13 +272,13 @@
 #define CONFIG_OF_STDOUT_VIA_ALIAS     1
 
 /* I2C */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
+#define CONFIG_NEW_I2C
 #define CONFIG_FSL_I2C
-#define CONFIG_SYS_I2C_SPEED           400000 /* I2C speed and slave address */
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x51} /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
-#define CONFIG_SYS_I2C2_OFFSET         0x3100
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x51}  /* Don't probe these 
addrs */
 
 /*
  * Board info - revision and where boot from
diff -purN u-boot-i2c.orig/include/configs/MPC8323ERDB.h 
u-boot-i2c/include/configs/MPC8323ERDB.h
--- u-boot-i2c.orig/include/configs/MPC8323ERDB.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8323ERDB.h    2009-02-12 10:46:00.000000000 
-0800
@@ -313,13 +313,13 @@
 #define CONFIG_OF_STDOUT_VIA_ALIAS     1
 
 /* I2C */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
+#define CONFIG_NEW_I2C
 #define CONFIG_FSL_I2C
-#define CONFIG_SYS_I2C_SPEED   400000  /* I2C speed and slave address */
-#define CONFIG_SYS_I2C_SLAVE   0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x51}  /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET  0x3000
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x51}  /* Don't probe these 
addrs */
 
 /*
  * Config on-board EEPROM
diff -purN u-boot-i2c.orig/include/configs/MPC832XEMDS.h 
u-boot-i2c/include/configs/MPC832XEMDS.h
--- u-boot-i2c.orig/include/configs/MPC832XEMDS.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC832XEMDS.h    2009-02-12 10:46:00.000000000 
-0800
@@ -323,13 +323,13 @@
 #define CONFIG_OF_STDOUT_VIA_ALIAS     1
 
 /* I2C */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
+#define CONFIG_NEW_I2C
 #define CONFIG_FSL_I2C
-#define CONFIG_SYS_I2C_SPEED   400000  /* I2C speed and slave address */
-#define CONFIG_SYS_I2C_SLAVE   0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x51}  /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET  0x3000
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x51}  /* Don't probe these 
addrs */
 
 /*
  * Config on-board RTC
diff -purN u-boot-i2c.orig/include/configs/MPC8349EMDS.h 
u-boot-i2c/include/configs/MPC8349EMDS.h
--- u-boot-i2c.orig/include/configs/MPC8349EMDS.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8349EMDS.h    2009-02-12 10:46:00.000000000 
-0800
@@ -347,16 +347,17 @@
 #define CONFIG_OF_STDOUT_VIA_ALIAS     1
 
 /* I2C */
-#define CONFIG_HARD_I2C                        /* I2C with hardware support*/
-#undef CONFIG_SOFT_I2C                 /* I2C bit-banged */
+#define CONFIG_NEW_I2C
+#define CONFIG_SYS_NUM_I2C_ADAPTERS    2
 #define CONFIG_FSL_I2C
-#define CONFIG_I2C_MULTI_BUS
-#define CONFIG_I2C_CMD_TREE
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address 
*/
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {{0,0x69}}      /* Don't probe these 
addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
-#define CONFIG_SYS_I2C2_OFFSET         0x3100
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_FSL_I2C2_SPEED      400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C2_SLAVE      0x7F
+#define CONFIG_SYS_FSL_I2C2_OFFSET     0x3100
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0], 
&fsl_i2c_adap[1]}
+#define CONFIG_SYS_I2C_NOPROBES                {{0,0x69}} /* Don't probe these 
addrs */
 
 /* SPI */
 #define CONFIG_MPC8XXX_SPI
diff -purN u-boot-i2c.orig/include/configs/MPC8349ITX.h 
u-boot-i2c/include/configs/MPC8349ITX.h
--- u-boot-i2c.orig/include/configs/MPC8349ITX.h        2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8349ITX.h     2009-02-12 10:46:00.000000000 
-0800
@@ -90,31 +90,29 @@
  */
 
 /* I2C */
-#ifdef CONFIG_HARD_I2C
-
+#define CONFIG_NEW_I2C
+#define CONFIG_SYS_NUM_I2C_ADAPTERS    2
 #define CONFIG_FSL_I2C
-#define CONFIG_I2C_MULTI_BUS
-#define CONFIG_I2C_CMD_TREE
-#define CONFIG_SYS_I2C_OFFSET          0x3000
-#define CONFIG_SYS_I2C2_OFFSET         0x3100
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_FSL_I2C2_SPEED      400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C2_SLAVE      0x7F
+#define CONFIG_SYS_FSL_I2C2_OFFSET     0x3100
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0], 
&fsl_i2c_adap[1]}
+/* Don't probe these addresses: */
+#define CONFIG_SYS_I2C_NOPROBES                {{1, 
CONFIG_SYS_I2C_8574_ADDR1}, \
+                                        {1, CONFIG_SYS_I2C_8574_ADDR2}, \
+                                        {1, CONFIG_SYS_I2C_8574A_ADDR1}, \
+                                        {1, CONFIG_SYS_I2C_8574A_ADDR2}}
 #define CONFIG_SYS_SPD_BUS_NUM         1       /* The I2C bus for SPD */
-
 #define CONFIG_SYS_I2C_8574_ADDR1      0x20    /* I2C1, PCF8574 */
 #define CONFIG_SYS_I2C_8574_ADDR2      0x21    /* I2C1, PCF8574 */
 #define CONFIG_SYS_I2C_8574A_ADDR1     0x38    /* I2C1, PCF8574A */
 #define CONFIG_SYS_I2C_8574A_ADDR2     0x39    /* I2C1, PCF8574A */
 #define CONFIG_SYS_I2C_EEPROM_ADDR     0x50    /* I2C0, Board EEPROM */
-#define CONFIG_SYS_I2C_RTC_ADDR        0x68    /* I2C1, DS1339 RTC*/
-#define SPD_EEPROM_ADDRESS     0x51    /* I2C1, DDR */
-
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address 
*/
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-
-/* Don't probe these addresses: */
-#define CONFIG_SYS_I2C_NOPROBES        {{1, CONFIG_SYS_I2C_8574_ADDR1}, \
-                                {1, CONFIG_SYS_I2C_8574_ADDR2}, \
-                                {1, CONFIG_SYS_I2C_8574A_ADDR1}, \
-                                {1, CONFIG_SYS_I2C_8574A_ADDR2}}
+#define CONFIG_SYS_I2C_RTC_ADDR                0x68    /* I2C1, DS1339 RTC*/
+#define SPD_EEPROM_ADDRESS             0x51    /* I2C1, DDR */
 /* Bit definitions for the 8574[A] I2C expander */
 #define I2C_8574_REVISION      0x03    /* Board revision, 00=0.0, 01=0.1, 
10=1.0 */
 #define I2C_8574_CF            0x08    /* 1=Compact flash absent, 0=present */
@@ -122,10 +120,6 @@
 #define I2C_8574_PCI66         0x20    /* 0=33MHz PCI, 1=66MHz PCI */
 #define I2C_8574_FLASHSIDE     0x40    /* 0=Reset vector from U4, 1=from U7*/
 
-#undef CONFIG_SOFT_I2C
-
-#endif
-
 /* Compact Flash */
 #ifdef CONFIG_COMPACT_FLASH
 
diff -purN u-boot-i2c.orig/include/configs/MPC8360EMDS.h 
u-boot-i2c/include/configs/MPC8360EMDS.h
--- u-boot-i2c.orig/include/configs/MPC8360EMDS.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8360EMDS.h    2009-02-12 10:46:00.000000000 
-0800
@@ -348,14 +348,13 @@
 #define CONFIG_OF_STDOUT_VIA_ALIAS     1
 
 /* I2C */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
+#define CONFIG_NEW_I2C
 #define CONFIG_FSL_I2C
-#define CONFIG_SYS_I2C_SPEED   400000  /* I2C speed and slave address */
-#define CONFIG_SYS_I2C_SLAVE   0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x52} /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET  0x3000
-#define CONFIG_SYS_I2C2_OFFSET 0x3100
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x52}  /* Don't probe these 
addrs */
 
 /*
  * Config on-board RTC
diff -purN u-boot-i2c.orig/include/configs/MPC8360ERDK.h 
u-boot-i2c/include/configs/MPC8360ERDK.h
--- u-boot-i2c.orig/include/configs/MPC8360ERDK.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8360ERDK.h    2009-02-12 10:46:00.000000000 
-0800
@@ -261,16 +261,17 @@
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* I2C */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
+#define CONFIG_NEW_I2C
+#define CONFIG_SYS_NUM_I2C_ADAPTERS    2
 #define CONFIG_FSL_I2C
-#define CONFIG_I2C_MULTI_BUS
-#define CONFIG_I2C_CMD_TREE
-#define CONFIG_SYS_I2C_SPEED   400000  /* I2C speed and slave address */
-#define CONFIG_SYS_I2C_SLAVE   0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {{0x52}} /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET  0x3000
-#define CONFIG_SYS_I2C2_OFFSET 0x3100
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_FSL_I2C2_SPEED      400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C2_SLAVE      0x7F
+#define CONFIG_SYS_FSL_I2C2_OFFSET     0x3100
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0], 
&fsl_i2c_adap[1]}
+#define CONFIG_SYS_I2C_NOPROBES                {{0,0x52}} /* Don't probe these 
addrs */
 
 /*
  * General PCI
diff -purN u-boot-i2c.orig/include/configs/MPC837XEMDS.h 
u-boot-i2c/include/configs/MPC837XEMDS.h
--- u-boot-i2c.orig/include/configs/MPC837XEMDS.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC837XEMDS.h    2009-02-12 10:46:00.000000000 
-0800
@@ -320,14 +320,13 @@
 #define CONFIG_OF_STDOUT_VIA_ALIAS     1
 
 /* I2C */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
+#define CONFIG_NEW_I2C
 #define CONFIG_FSL_I2C
-#define CONFIG_SYS_I2C_SPEED           400000 /* I2C speed and slave address */
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x51} /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
-#define CONFIG_SYS_I2C2_OFFSET         0x3100
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x51}  /* Don't probe these 
addrs */
 
 /*
  * Config on-board RTC
diff -purN u-boot-i2c.orig/include/configs/MPC837XERDB.h 
u-boot-i2c/include/configs/MPC837XERDB.h
--- u-boot-i2c.orig/include/configs/MPC837XERDB.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC837XERDB.h    2009-02-12 10:46:00.000000000 
-0800
@@ -342,14 +342,13 @@
 #define CONFIG_OF_STDOUT_VIA_ALIAS 1
 
 /* I2C */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
+#define CONFIG_NEW_I2C
 #define CONFIG_FSL_I2C
-#define CONFIG_SYS_I2C_SPEED           400000 /* I2C speed and slave address */
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x51} /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
-#define CONFIG_SYS_I2C2_OFFSET         0x3100
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x51}  /* Don't probe these 
addrs */
 
 /*
  * Config on-board RTC
diff -purN u-boot-i2c.orig/include/configs/MPC8536DS.h 
u-boot-i2c/include/configs/MPC8536DS.h
--- u-boot-i2c.orig/include/configs/MPC8536DS.h 2009-02-12 10:43:41.000000000 
-0800
+++ u-boot-i2c/include/configs/MPC8536DS.h      2009-02-12 10:46:00.000000000 
-0800
@@ -331,16 +331,17 @@ extern unsigned long get_board_ddr_clk(u
 /*
  * I2C
  */
-#define CONFIG_FSL_I2C         /* Use FSL common I2C driver */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
-#define CONFIG_I2C_MULTI_BUS
-#define CONFIG_I2C_CMD_TREE
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address 
*/
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {{0, 0x29}}     /* Don't probe these 
addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
-#define CONFIG_SYS_I2C2_OFFSET         0x3100
+#define CONFIG_NEW_I2C
+#define CONFIG_SYS_NUM_I2C_ADAPTERS    2
+#define CONFIG_FSL_I2C
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_FSL_I2C2_SPEED      400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C2_SLAVE      0x7F
+#define CONFIG_SYS_FSL_I2C2_OFFSET     0x3100
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0], 
&fsl_i2c_adap[1]}
+#define CONFIG_SYS_I2C_NOPROBES                {{0,0x29}} /* Don't probe these 
addrs */
 
 /*
  * I2C2 EEPROM
diff -purN u-boot-i2c.orig/include/configs/MPC8540ADS.h 
u-boot-i2c/include/configs/MPC8540ADS.h
--- u-boot-i2c.orig/include/configs/MPC8540ADS.h        2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8540ADS.h     2009-02-12 10:46:00.000000000 
-0800
@@ -299,13 +299,13 @@
 /*
  * I2C
  */
-#define CONFIG_FSL_I2C         /* Use FSL common I2C driver */
-#define CONFIG_HARD_I2C                /* I2C with hardware support*/
-#undef CONFIG_SOFT_I2C                 /* I2C bit-banged */
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address 
*/
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x69}  /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
+#define CONFIG_NEW_I2C
+#define CONFIG_FSL_I2C
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x69}  /* Don't probe these 
addrs */
 
 /* RapidIO MMU */
 #define CONFIG_SYS_RIO_MEM_VIRT        0xc0000000      /* base address */
diff -purN u-boot-i2c.orig/include/configs/MPC8540EVAL.h 
u-boot-i2c/include/configs/MPC8540EVAL.h
--- u-boot-i2c.orig/include/configs/MPC8540EVAL.h       2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8540EVAL.h    2009-02-12 10:46:00.000000000 
-0800
@@ -195,13 +195,13 @@
 /*
  * I2C
  */
-#define CONFIG_FSL_I2C         /* Use FSL common I2C driver */
-#define CONFIG_HARD_I2C                /* I2C with hardware support*/
-#undef CONFIG_SOFT_I2C                 /* I2C bit-banged               */
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address  
*/
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x69}  /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
+#define CONFIG_NEW_I2C
+#define CONFIG_FSL_I2C
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x69}  /* Don't probe these 
addrs */
 
 /* General PCI */
 #define CONFIG_SYS_PCI_MEM_BASE        0x80000000
diff -purN u-boot-i2c.orig/include/configs/MPC8541CDS.h 
u-boot-i2c/include/configs/MPC8541CDS.h
--- u-boot-i2c.orig/include/configs/MPC8541CDS.h        2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8541CDS.h     2009-02-12 10:46:00.000000000 
-0800
@@ -322,13 +322,13 @@ extern unsigned long get_clock_freq(void
 /*
  * I2C
  */
-#define CONFIG_FSL_I2C         /* Use FSL common I2C driver */
-#define CONFIG_HARD_I2C                /* I2C with hardware support*/
-#undef CONFIG_SOFT_I2C                 /* I2C bit-banged */
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address 
*/
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x69}  /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
+#define CONFIG_NEW_I2C
+#define CONFIG_FSL_I2C
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x69}  /* Don't probe these 
addrs */
 
 /* EEPROM */
 #define CONFIG_ID_EEPROM
diff -purN u-boot-i2c.orig/include/configs/MPC8544DS.h 
u-boot-i2c/include/configs/MPC8544DS.h
--- u-boot-i2c.orig/include/configs/MPC8544DS.h 2009-02-12 10:43:41.000000000 
-0800
+++ u-boot-i2c/include/configs/MPC8544DS.h      2009-02-12 10:46:00.000000000 
-0800
@@ -250,14 +250,14 @@ extern unsigned long get_board_sys_clk(u
 #define CONFIG_SYS_64BIT_VSPRINTF              1
 
 /* I2C */
-#define CONFIG_FSL_I2C         /* Use FSL common I2C driver */
-#define CONFIG_HARD_I2C                /* I2C with hardware support */
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address 
*/
+#define CONFIG_NEW_I2C
+#define CONFIG_FSL_I2C
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x69}  /* Don't probe these 
addrs */
 #define CONFIG_SYS_I2C_EEPROM_ADDR     0x57
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x69}  /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3100
 
 /*
  * General PCI
diff -purN u-boot-i2c.orig/include/configs/MPC8548CDS.h 
u-boot-i2c/include/configs/MPC8548CDS.h
--- u-boot-i2c.orig/include/configs/MPC8548CDS.h        2009-02-12 
10:43:41.000000000 -0800
+++ u-boot-i2c/include/configs/MPC8548CDS.h     2009-02-12 10:46:00.000000000 
-0800
@@ -343,16 +343,88 @@ extern unsigned long get_clock_freq(void
 #define CONFIG_SYS_64BIT_VSPRINTF      1
 #define CONFIG_SYS_64BIT_STRTOUL       1
 
+
+#define CONFIG_NEW_I2C
+#if 1
+#define CONFIG_FSL_I2C
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0]}
+#define CONFIG_SYS_I2C_NOPROBES                {0x69}  /* Don't probe these 
addrs */
+#else
 /*
- * I2C
+ * Illustrative example with 5 I2C adapters and 7 I2C busses.
+ *
+ * Adapters: 2x FSL_I2C (0 and 1,) SM502 adapter (2,) 2x SOFT_I2C (3 and 4)
+ *
+ * Busses:
+ *
+ *     0:      Direct off of FSL_I2C[0]
+ *     1:      FSL_I2C[1]->PCA9542(0)->PCA9542(0)
+ *     2:      FSL_I2C[1]->PCA9542(0)->PCA9542(1)
+ *     3:      FSL_I2C[1]->PCA9542(1)
+ *     4:      Direct off of SM502_I2C
+ *     5:      Direct off of SOFT_I2C[0]
+ *     6:      Direct off of SOFT_I2C[1]
+ *
+ * This might not have sense (it is much more logical to use a single
+ * PCA9544 for 3 busses off of FSL_I2C[1]) but it is just an illustrative
+ * example. SOFT_I2C declarations are totally bogus.
  */
-#define CONFIG_FSL_I2C         /* Use FSL common I2C driver */
-#define CONFIG_HARD_I2C                /* I2C with hardware support*/
-#undef CONFIG_SOFT_I2C         /* I2C bit-banged */
-#define CONFIG_SYS_I2C_SPEED           400000  /* I2C speed and slave address 
*/
-#define CONFIG_SYS_I2C_SLAVE           0x7F
-#define CONFIG_SYS_I2C_NOPROBES        {0x69}  /* Don't probe these addrs */
-#define CONFIG_SYS_I2C_OFFSET          0x3000
+#define CONFIG_SYS_NUM_I2C_ADAPTERS    5
+#define CONFIG_SYS_NUM_I2C_BUSSES      7
+#define CONFIG_SYS_I2C_MAX_HOPS                2
+
+#define CONFIG_SOFT_I2C
+#define I2C_SOFT_DECLARATIONS          I2C_SOFT_DEFS
+
+#define I2C_INIT       (printf("init"))
+#define I2C_ACTIVE     (printf("active"))
+#define I2C_TRISTATE   (printf("tristate"))
+#define I2C_READ       (1)
+#define I2C_SDA(bit)   (printf("sda: %d", bit))
+#define I2C_SCL(bit)   (printf("scl: %d", bit))
+#define I2C_DELAY      udelay(2)       /* 1/4 I2C clock duration */
+
+#define CONFIG_SYS_SOFT_I2C_SPEED      100000
+#define CONFIG_SYS_SOFT_I2C_SLAVE      0x7f
+
+#define I2C_SOFT_DECLARATIONS2         I2C_SOFT_DEFS
+
+#define I2C_INIT2      (printf("init1"))
+#define I2C_ACTIVE2    (printf("active1"))
+#define I2C_TRISTATE2  (printf("tristate1"))
+#define I2C_READ2      (1)
+#define I2C_SDA2(bit)  (printf("sda1: %d", bit))
+#define I2C_SCL2(bit)  (printf("scl1: %d", bit))
+#define I2C_DELAY2     udelay(2)       /* 1/4 I2C clock duration */
+
+#define CONFIG_SYS_SOFT_I2C2_SPEED     100000
+#define CONFIG_SYS_SOFT_I2C2_SLAVE     0x7f
+
+#define CONFIG_SM502_I2C                       /* Use SM502 I2C driver */
+#define CONFIG_SYS_SM501_I2C_SPEED     400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_SM501_I2C_SLAVE     0x7F    /* Adapter #1 */
+#define CONFIG_SYS_SM501_BASEADDR      0x80000000      /* Bogus */
+
+#define CONFIG_FSL_I2C                         /* Use FSL common I2C driver */
+#define CONFIG_SYS_FSL_I2C_SPEED       400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C_SLAVE       0x7F    /* Adapter #1 */
+#define CONFIG_SYS_FSL_I2C_OFFSET      0x3000
+#define CONFIG_SYS_FSL_I2C2_SPEED      400000  /* I2C speed and slave address 
*/
+#define CONFIG_SYS_FSL_I2C2_SLAVE      0x7F    /* Adapter #2 */
+#define CONFIG_SYS_FSL_I2C2_OFFSET     0x3100
+#define CONFIG_SYS_I2C_ADAPTERS                {&fsl_i2c_adap[0], 
&fsl_i2c_adap[1], &sm501_i2c_adap, &soft_i2c_adap[0], &soft_i2c_adap[1]}
+#define CONFIG_SYS_I2C_BUSSES  {       {0, {I2C_NULL_HOP, I2C_NULL_HOP}}, \
+               {1, {{I2C_MUX_PCA9542, 0x70, 0}, {I2C_MUX_PCA9542, 0x71, 0}}}, \
+               {1, {{I2C_MUX_PCA9542, 0x70, 0}, {I2C_MUX_PCA9542, 0x71, 1}}}, \
+               {1, {{I2C_MUX_PCA9542, 0x70, 1}, I2C_NULL_HOP}}, \
+               {2, {I2C_NULL_HOP, I2C_NULL_HOP}}, \
+               {3, {I2C_NULL_HOP, I2C_NULL_HOP}}, \
+               {4, {I2C_NULL_HOP, I2C_NULL_HOP}}}
+#define CONFIG_SYS_I2C_NOPROBES                {{0,0x69},{1,0x69}}     /* 
Don't probe these addrs */
+#endif
 
 /* EEPROM */
 #define CONFIG_ID_EEPROM
@@ -369,23 +441,23 @@ extern unsigned long get_clock_freq(void
 #define CONFIG_SYS_PCI_PHYS            0x80000000      /* 1G PCI TLB */
 
 #define CONFIG_SYS_PCI1_MEM_VIRT       0x80000000
-#define CONFIG_SYS_PCI1_MEM_BUS        0x80000000
+#define CONFIG_SYS_PCI1_MEM_BUS                0x80000000
 #define CONFIG_SYS_PCI1_MEM_PHYS       0x80000000
 #define CONFIG_SYS_PCI1_MEM_SIZE       0x20000000      /* 512M */
-#define CONFIG_SYS_PCI1_IO_VIRT        0xe2000000
-#define CONFIG_SYS_PCI1_IO_BUS 0x00000000
-#define CONFIG_SYS_PCI1_IO_PHYS        0xe2000000
-#define CONFIG_SYS_PCI1_IO_SIZE        0x00100000      /* 1M */
+#define CONFIG_SYS_PCI1_IO_VIRT                0xe2000000
+#define CONFIG_SYS_PCI1_IO_BUS         0x00000000
+#define CONFIG_SYS_PCI1_IO_PHYS                0xe2000000
+#define CONFIG_SYS_PCI1_IO_SIZE                0x00100000      /* 1M */
 
 #ifdef CONFIG_PCI2
 #define CONFIG_SYS_PCI2_MEM_VIRT       0xa0000000
-#define CONFIG_SYS_PCI2_MEM_BUS        0xa0000000
+#define CONFIG_SYS_PCI2_MEM_BUS                0xa0000000
 #define CONFIG_SYS_PCI2_MEM_PHYS       0xa0000000
 #define CONFIG_SYS_PCI2_MEM_SIZE       0x20000000      /* 512M */
-#define CONFIG_SYS_PCI2_IO_VIRT        0xe2800000
-#define CONFIG_SYS_PCI2_IO_BUS 0x00000000
-#define CONFIG_SYS_PCI2_IO_PHYS        0xe2800000
-#define CONFIG_SYS_PCI2_IO_SIZE        0x00100000      /* 1M */
+#define CONFIG_SYS_PCI2_IO_VIRT                0xe2800000
+#define CONFIG_SYS_PCI2_IO_BUS         0x00000000
+#define CONFIG_SYS_PCI2_IO_PHYS                0xe2800000
+#define CONFIG_SYS_PCI2_IO_SIZE                0x00100000      /* 1M */
 #endif
 
 #ifdef CONFIG_PCIE1
@@ -394,7 +466,7 @@ extern unsigned long get_clock_freq(void
 #define CONFIG_SYS_PCIE1_MEM_PHYS      0xa0000000
 #define CONFIG_SYS_PCIE1_MEM_SIZE      0x20000000      /* 512M */
 #define CONFIG_SYS_PCIE1_IO_VIRT       0xe3000000
-#define CONFIG_SYS_PCIE1_IO_BUS        0x00000000
+#define CONFIG_SYS_PCIE1_IO_BUS                0x00000000
 #define CONFIG_SYS_PCIE1_IO_PHYS       0xe3000000
 #define CONFIG_SYS_PCIE1_IO_SIZE       0x00100000      /*   1M */
 #endif
@@ -403,9 +475,9 @@ extern unsigned long get_clock_freq(void
 /*
  * RapidIO MMU
  */
-#define CONFIG_SYS_RIO_MEM_VIRT        0xC0000000
-#define CONFIG_SYS_RIO_MEM_BUS 0xC0000000
-#define CONFIG_SYS_RIO_MEM_SIZE        0x20000000      /* 512M */
+#define CONFIG_SYS_RIO_MEM_VIRT                0xC0000000
+#define CONFIG_SYS_RIO_MEM_BUS         0xC0000000
+#define CONFIG_SYS_RIO_MEM_SIZE                0x20000000      /* 512M */
 #endif
 
 #ifdef CONFIG_LEGACY
@@ -490,8 +562,11 @@ extern unsigned long get_clock_freq(void
  */
 #include <config_cmd_default.h>
 
+#define CONFIG_I2C_CMD_TREE
+
 #define CONFIG_CMD_PING
 #define CONFIG_CMD_I2C
+#define CONFIG_CMD_SDRAM
 #define CONFIG_CMD_MII
 #define CONFIG_CMD_ELF
 #define CONFIG_CMD_IRQ
_______________________________________________
U-Boot mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to