eeprom: Zap CONFIG_SYS_I2C_MULTI_EEPROMS
authorMarek Vasut <marex@denx.de>
Tue, 10 Nov 2015 19:53:19 +0000 (20:53 +0100)
committerTom Rini <trini@konsulko.com>
Sun, 22 Nov 2015 02:50:21 +0000 (21:50 -0500)
This option only complicates the code unnecessarily, just use
CONFIG_SYS_DEF_EEPROM_ADDR as the default address if there are
only five arguments to eeprom {read/write} if this is defined.
If CONFIG_SYS_DEF_EEPROM_ADDR is not defined, we mandate all
six arguments.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
Cc: Heiko Schocher <hs@denx.de>
Reviewed-by: Heiko Schocher <hs@denx.de>
30 files changed:
common/cmd_eeprom.c
include/configs/BSC9131RDB.h
include/configs/BSC9132QDS.h
include/configs/C29XPCIE.h
include/configs/P1010RDB.h
include/configs/PMC440.h
include/configs/TQM834x.h
include/configs/acadia.h
include/configs/am335x_evm.h
include/configs/am43xx_evm.h
include/configs/axs101.h
include/configs/bamboo.h
include/configs/canyonlands.h
include/configs/icon.h
include/configs/intip.h
include/configs/katmai.h
include/configs/km/km-powerpc.h
include/configs/km/km_arm.h
include/configs/luan.h
include/configs/m28evk.h
include/configs/motionpro.h
include/configs/p1_p2_rdb_pc.h
include/configs/p1_twr.h
include/configs/pcm051.h
include/configs/pengwyn.h
include/configs/sequoia.h
include/configs/t3corp.h
include/configs/tricorder.h
include/configs/walnut.h
include/configs/yosemite.h

index 4335079..0b59bea 100644 (file)
@@ -338,50 +338,50 @@ static int do_eeprom(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
        const char *const fmt =
                "\nEEPROM @0x%lX %s: addr %08lx  off %04lx  count %ld ... ";
+       char * const *args = &argv[2];
+       int rcode;
+       ulong dev_addr, addr, off, cnt;
+
+       switch (argc) {
+#ifdef CONFIG_SYS_DEF_EEPROM_ADDR
+       case 5:
+               dev_addr = CONFIG_SYS_DEF_EEPROM_ADDR;
+               break;
+#endif
+       case 6:
+               dev_addr = simple_strtoul(*args++, NULL, 16);
+               break;
+       default:
+               return CMD_RET_USAGE;
+       }
 
-#if defined(CONFIG_SYS_I2C_MULTI_EEPROMS)
-       if (argc == 6) {
-               ulong dev_addr = simple_strtoul (argv[2], NULL, 16);
-               ulong addr = simple_strtoul (argv[3], NULL, 16);
-               ulong off  = simple_strtoul (argv[4], NULL, 16);
-               ulong cnt  = simple_strtoul (argv[5], NULL, 16);
-#else
-       if (argc == 5) {
-               ulong dev_addr = CONFIG_SYS_DEF_EEPROM_ADDR;
-               ulong addr = simple_strtoul (argv[2], NULL, 16);
-               ulong off  = simple_strtoul (argv[3], NULL, 16);
-               ulong cnt  = simple_strtoul (argv[4], NULL, 16);
-#endif /* CONFIG_SYS_I2C_MULTI_EEPROMS */
+       addr = simple_strtoul(*args++, NULL, 16);
+       off = simple_strtoul(*args++, NULL, 16);
+       cnt = simple_strtoul(*args++, NULL, 16);
 
 # if !defined(CONFIG_SPI) || defined(CONFIG_ENV_EEPROM_IS_ON_I2C)
-               eeprom_init ();
+       eeprom_init ();
 # endif /* !CONFIG_SPI */
 
-               if (strcmp (argv[1], "read") == 0) {
-                       int rcode;
-
-                       printf (fmt, dev_addr, argv[1], addr, off, cnt);
-
-                       rcode = eeprom_read (dev_addr, off, (uchar *) addr, cnt);
+       if (strcmp (argv[1], "read") == 0) {
+               printf(fmt, dev_addr, argv[1], addr, off, cnt);
 
-                       puts ("done\n");
-                       return rcode;
-               } else if (strcmp (argv[1], "write") == 0) {
-                       int rcode;
+               rcode = eeprom_read(dev_addr, off, (uchar *) addr, cnt);
 
-                       printf (fmt, dev_addr, argv[1], addr, off, cnt);
+               puts ("done\n");
+               return rcode;
+       } else if (strcmp (argv[1], "write") == 0) {
+               printf(fmt, dev_addr, argv[1], addr, off, cnt);
 
-                       rcode = eeprom_write (dev_addr, off, (uchar *) addr, cnt);
+               rcode = eeprom_write(dev_addr, off, (uchar *) addr, cnt);
 
-                       puts ("done\n");
-                       return rcode;
-               }
+               puts ("done\n");
+               return rcode;
        }
 
        return CMD_RET_USAGE;
 }
 
-#ifdef CONFIG_SYS_I2C_MULTI_EEPROMS
 U_BOOT_CMD(
        eeprom, 6,      1,      do_eeprom,
        "EEPROM sub-system",
@@ -389,12 +389,3 @@ U_BOOT_CMD(
        "eeprom write devaddr addr off cnt\n"
        "       - read/write `cnt' bytes from `devaddr` EEPROM at offset `off'"
 )
-#else /* One EEPROM */
-U_BOOT_CMD(
-       eeprom, 5,      1,      do_eeprom,
-       "EEPROM sub-system",
-       "read  addr off cnt\n"
-       "eeprom write addr off cnt\n"
-       "       - read/write `cnt' bytes at EEPROM offset `off'"
-)
-#endif /* CONFIG_SYS_I2C_MULTI_EEPROMS */
index 7b34470..665cad7 100644 (file)
@@ -266,7 +266,6 @@ extern unsigned long get_sdram_size(void);
 
 /* I2C EEPROM */
 #define CONFIG_CMD_EEPROM
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
index a3a853d..79d8e3f 100644 (file)
@@ -462,7 +462,6 @@ combinations. this should be removed later
 
 /* enable read and write access to EEPROM */
 #define CONFIG_CMD_EEPROM
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
index 9f86f1e..e70506e 100644 (file)
 /* I2C EEPROM */
 /* enable read and write access to EEPROM */
 #define CONFIG_CMD_EEPROM
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
index 49105dc..e96d6db 100644 (file)
@@ -659,7 +659,6 @@ extern unsigned long get_sdram_size(void);
 #endif
 /* enable read and write access to EEPROM */
 #define CONFIG_CMD_EEPROM
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
index 5488c68..05ad315 100644 (file)
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_1          400000
 #define CONFIG_SYS_I2C_PPC4XX_SLAVE_1          0x7F
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 
 #define CONFIG_SYS_I2C_EEPROM_ADDR             0x54
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN         2
index 5221fbb..58a17f5 100644 (file)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN         2       /* 16 bit */
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS      5       /* 32 bytes/write */
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS  12      /* 10ms +/- 20% */
-#define CONFIG_SYS_I2C_MULTI_EEPROMS           /* more than one eeprom */
 
 /* I2C RTC */
 #define CONFIG_RTC_DS1337                      /* use ds1337 rtc via i2c */
index 4dd5720..2f53d73 100644 (file)
  *----------------------------------------------------------------------*/
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0          400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR     (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
index ed3fd34..d501f04 100644 (file)
 #define CONFIG_ENV_EEPROM_IS_ON_I2C
 #define CONFIG_SYS_I2C_EEPROM_ADDR     0x50    /* Main EEPROM */
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 
 /* PMIC support */
 #define CONFIG_POWER_TPS65217
index fa01d1e..42e1425 100644 (file)
@@ -33,7 +33,6 @@
 #define CONFIG_ENV_EEPROM_IS_ON_I2C
 #define CONFIG_SYS_I2C_EEPROM_ADDR     0x50    /* Main EEPROM */
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 
 /* Power */
 #define CONFIG_POWER
index 9e90b69..650d97d 100644 (file)
@@ -78,7 +78,6 @@
 /*
  * EEPROM configuration
  */
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR             (0xA8 >> 1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN         1
 #define CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW    1
index 6ba4aaf..5b8b22f 100644 (file)
  *----------------------------------------------------------------------*/
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0          400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR     (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
index ed790cc..e136824 100644 (file)
  *----------------------------------------------------------------------*/
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0          400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR             (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN         1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS      3
index bbe9b59..d9a3671 100644 (file)
 
 #define CONFIG_SYS_SPD_BUS_NUM 0       /* The I2C bus for SPD          */
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR     0x50
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
index a676a20..60c9e2c 100644 (file)
  */
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0          400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR             (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN         1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS      3
index fa72eb0..664896b 100644 (file)
 #define IIC0_BOOTPROM_ADDR     0x50
 #define IIC0_ALT_BOOTPROM_ADDR 0x54
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR     (0x50)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
index 3f045f2..eba7479 100644 (file)
@@ -25,7 +25,6 @@
 #define CONFIG_KM_COMMON_ETH_INIT
 
 /* EEprom support 24C08, 24C16, 24C64 */
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_ENABLE
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS      3  /* 8 Byte write page */
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS  10
index 098839b..750b7e9 100644 (file)
@@ -220,7 +220,6 @@ int get_scl(void);
 #define        CONFIG_SYS_I2C_SOFT_SPEED       100000
 
 /* EEprom support 24C128, 24C256 valid for environment eeprom */
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_ENABLE
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS      6 /* 64 Byte write page */
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS  10
index 15e4a7e..e22d0e8 100644 (file)
  *----------------------------------------------------------------------*/
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0          400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR     (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
index 24b5489..405a871 100644 (file)
@@ -91,7 +91,6 @@
 
 /* EEPROM */
 #ifdef CONFIG_CMD_EEPROM
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
 #endif
 
index 97c614b..a8cf201 100644 (file)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN         1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS      1       /* 2 bytes per write cycle */
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS  5       /* 2ms/cycle + 3ms extra */
-#define CONFIG_SYS_I2C_MULTI_EEPROMS           1       /* 2 EEPROMs (addr:50,52) */
 
 /*
  * RTC configuration
index 381b176..57e1c5f 100644 (file)
 
 /* enable read and write access to EEPROM */
 #define CONFIG_CMD_EEPROM
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
index d2af2a0..c7608c5 100644 (file)
@@ -261,7 +261,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 
 /* enable read and write access to EEPROM */
 #define CONFIG_CMD_EEPROM
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
index 275e952..64cfd81 100644 (file)
 #define CONFIG_ENV_EEPROM_IS_ON_I2C
 #define CONFIG_SYS_I2C_EEPROM_ADDR     0x50    /* Main EEPROM */
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 
 #define CONFIG_SYS_BAUDRATE_TABLE      { 110, 300, 600, 1200, 2400, \
 4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 }
index d68cded..bfc1c1e 100644 (file)
 #define CONFIG_ENV_EEPROM_IS_ON_I2C
 #define CONFIG_SYS_I2C_EEPROM_ADDR     0x50
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 
 /* SPL */
 #define CONFIG_SPL_POWER_SUPPORT
index 1f1beea..f32459b 100644 (file)
  */
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0          400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR     (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
index 502e795..7942865 100644 (file)
  */
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0                  400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR             (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN         1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS      3
index ca28e47..f5f5324 100644 (file)
  
 
 /* EEPROM */
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_CMD_EEPROM
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
 #define CONFIG_SYS_EEPROM_BUS_NUM      1
index 8b803a2..dd6b519 100644 (file)
@@ -80,7 +80,6 @@
  */
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0          400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR     (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
index 8508a80..0cffab8 100644 (file)
  *----------------------------------------------------------------------*/
 #define CONFIG_SYS_I2C_PPC4XX_SPEED_0          400000
 
-#define CONFIG_SYS_I2C_MULTI_EEPROMS
 #define CONFIG_SYS_I2C_EEPROM_ADDR     (0xa8>>1)
 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3