[U-Boot] [PATCH 01/11] i2c: Drop use of CONFIG_I2C_HARD

Heiko Schocher hs at denx.de
Fri Apr 28 04:35:08 UTC 2017


Hello Simon,

Am 23.04.2017 um 17:35 schrieb Simon Glass:
> This option is pretty old. It predates CONFIG_SYS_I2C which is itself
> deprecated in favour of driver model. Disable it for all boards.
>
> Also drop I2C options which depend on this.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
>   README                                       | 17 +-------
>   arch/arm/include/asm/arch-armada100/config.h | 12 -----
>   board/alphaproject/ap_sh4a_4a/ap_sh4a_4a.c   | 12 +----
>   board/cm5200/cm5200.c                        | 32 ++++----------
>   board/cm5200/cmd_cm5200.c                    | 32 +-------------
>   board/davedenx/aria/aria.c                   |  3 --
>   board/esd/mecp5123/mecp5123.c                | 12 +----
>   board/freescale/mpc5121ads/mpc5121ads.c      | 21 ---------
>   board/ifm/ac14xx/ac14xx.c                    | 53 +----------------------
>   board/renesas/r0p7734/r0p7734.c              | 12 +----
>   board/tqc/tqm5200/tqm5200.c                  | 18 ++------
>   configs/MiniFAP_defconfig                    |  1 -
>   configs/O2D300_defconfig                     |  1 -
>   configs/O2DNT2_RAMBOOT_defconfig             |  1 -
>   configs/O2DNT2_defconfig                     |  1 -
>   configs/O2D_defconfig                        |  1 -
>   configs/O2I_defconfig                        |  1 -
>   configs/O2MNT_O2M110_defconfig               |  1 -
>   configs/O2MNT_O2M112_defconfig               |  1 -
>   configs/O2MNT_O2M113_defconfig               |  1 -
>   configs/O2MNT_defconfig                      |  1 -
>   configs/O3DNT_defconfig                      |  1 -
>   configs/TQM5200S_HIGHBOOT_defconfig          |  1 -
>   configs/TQM5200S_defconfig                   |  1 -
>   configs/TQM5200_B_HIGHBOOT_defconfig         |  1 -
>   configs/TQM5200_B_defconfig                  |  1 -
>   configs/TQM5200_STK100_defconfig             |  1 -
>   configs/TQM5200_defconfig                    |  1 -
>   configs/a4m072_defconfig                     |  1 -
>   configs/ac14xx_defconfig                     |  1 -
>   configs/ap_sh4a_4a_defconfig                 |  1 -
>   configs/apx4devkit_defconfig                 |  1 -
>   configs/aria_defconfig                       |  1 -
>   configs/aspenite_defconfig                   |  1 -
>   configs/cam5200_defconfig                    |  1 -
>   configs/cam5200_niosflash_defconfig          |  1 -
>   configs/charon_defconfig                     |  1 -
>   configs/cm5200_defconfig                     |  1 -
>   configs/digsy_mtc_RAMBOOT_defconfig          |  1 -
>   configs/digsy_mtc_defconfig                  |  1 -
>   configs/digsy_mtc_rev5_RAMBOOT_defconfig     |  1 -
>   configs/digsy_mtc_rev5_defconfig             |  1 -
>   configs/fo300_defconfig                      |  1 -
>   configs/gplugd_defconfig                     |  1 -
>   configs/ipek01_defconfig                     |  1 -
>   configs/m28evk_defconfig                     |  1 -
>   configs/mecp5123_defconfig                   |  1 -
>   configs/motionpro_defconfig                  |  1 -
>   configs/mpc5121ads_defconfig                 |  1 -
>   configs/mpc5121ads_rev2_defconfig            |  1 -
>   configs/pcm030_LOWBOOT_defconfig             |  1 -
>   configs/pcm030_defconfig                     |  1 -
>   configs/pdm360ng_defconfig                   |  1 -
>   configs/r0p7734_defconfig                    |  1 -
>   configs/v38b_defconfig                       |  1 -
>   include/common.h                             | 10 +++++
>   include/configs/M54418TWR.h                  |  1 -
>   include/configs/TQM5200.h                    | 65 +---------------------------
>   include/configs/a4m072.h                     | 20 ---------
>   include/configs/ac14xx.h                     | 18 --------
>   include/configs/ap_sh4a_4a.h                 | 14 ------
>   include/configs/apx4devkit.h                 |  7 ---
>   include/configs/aria.h                       | 21 ---------
>   include/configs/axs10x.h                     |  2 +-
>   include/configs/cm5200.h                     | 12 +----
>   include/configs/digsy_mtc.h                  | 32 --------------
>   include/configs/ids8313.h                    |  1 -
>   include/configs/ipek01.h                     | 24 ----------
>   include/configs/jupiter.h                    | 19 --------
>   include/configs/m28evk.h                     |  6 ---
>   include/configs/manroland/mpc5200-common.h   | 30 -------------
>   include/configs/mecp5123.h                   | 19 +-------
>   include/configs/motionpro.h                  | 23 ----------
>   include/configs/mpc5121ads.h                 | 19 --------
>   include/configs/mxs.h                        | 10 -----
>   include/configs/o2dnt-common.h               | 22 ----------
>   include/configs/pcm030.h                     | 32 +-------------
>   include/configs/pdm360ng.h                   | 31 -------------
>   include/configs/r0p7734.h                    | 14 ------
>   include/configs/s32v234evb.h                 | 10 -----
>   include/configs/v38b.h                       | 22 ----------
>   81 files changed, 35 insertions(+), 717 deletions(-)

Thanks!

Reviewed-by: Heiko Schocher <hs at denx.de>

Applied to u-boot-i2c/next

bye,
Heiko

>
> diff --git a/README b/README
> index f7ab78a8bf..f31bb3dffe 100644
> --- a/README
> +++ b/README
> @@ -2223,22 +2223,9 @@ The following options need to be configured:
>   		- approved multibus support
>   		- better i2c mux support
>
> -		** Please consider updating your I2C driver now. **
> +		** CONFIG_HARD_I2C is now being removed **
>
> -		These enable legacy I2C serial bus commands. Defining
> -		CONFIG_HARD_I2C will include the appropriate I2C driver
> -		for the selected CPU.
> -
> -		This will allow you to use i2c commands at the u-boot
> -		command line (as long as you set CONFIG_CMD_I2C in
> -		CONFIG_COMMANDS) and communicate with i2c based realtime
> -		clock chips. See common/cmd_i2c.c for a description of the
> -		command line interface.
> -
> -		CONFIG_HARD_I2C selects a hardware I2C controller.
> -
> -		There are several other quantities that must also be
> -		defined when you define CONFIG_HARD_I2C.
> +----under removal:
>
>   		In both cases you will need to define CONFIG_SYS_I2C_SPEED
>   		to be the frequency (in Hz) at which you wish your i2c bus
> diff --git a/arch/arm/include/asm/arch-armada100/config.h b/arch/arm/include/asm/arch-armada100/config.h
> index 6ebc759f4b..113e1c73f3 100644
> --- a/arch/arm/include/asm/arch-armada100/config.h
> +++ b/arch/arm/include/asm/arch-armada100/config.h
> @@ -24,17 +24,5 @@
>   #define MV_UART_CONSOLE_BASE	ARMD1_UART1_BASE
>   #define CONFIG_SYS_NS16550_IER	(1 << 6)	/* Bit 6 in UART_IER register
>   						represents UART Unit Enable */
> -/*
> - * I2C definition
> - */
> -#ifdef CONFIG_CMD_I2C
> -#define CONFIG_I2C_MV		1
> -#define CONFIG_MV_I2C_NUM	2
> -#define CONFIG_I2C_MULTI_BUS	1
> -#define CONFIG_MV_I2C_REG	{0xd4011000, 0xd4025000}
> -#define CONFIG_HARD_I2C		1
> -#define CONFIG_SYS_I2C_SPEED	0
> -#define CONFIG_SYS_I2C_SLAVE	0xfe
> -#endif
>
>   #endif /* _ARMD1_CONFIG_H */
> diff --git a/board/alphaproject/ap_sh4a_4a/ap_sh4a_4a.c b/board/alphaproject/ap_sh4a_4a/ap_sh4a_4a.c
> index 31418a1f96..9205c22e0b 100644
> --- a/board/alphaproject/ap_sh4a_4a/ap_sh4a_4a.c
> +++ b/board/alphaproject/ap_sh4a_4a/ap_sh4a_4a.c
> @@ -156,17 +156,7 @@ int board_init(void)
>
>   int board_late_init(void)
>   {
> -	u8 mac[6];
> -
> -	/* Read Mac Address and set*/
> -	i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
> -	i2c_set_bus_num(CONFIG_SYS_I2C_MODULE);
> -
> -	/* Read MAC address */
> -	i2c_read(0x50, 0x0, 0, mac, 6);
> -
> -	if (is_valid_ethaddr(mac))
> -		eth_setenv_enetaddr("ethaddr", mac);
> +	printf("Cannot use I2C to get MAC address\n");
>
>   	return 0;
>   }
> diff --git a/board/cm5200/cm5200.c b/board/cm5200/cm5200.c
> index 7b862355c8..2f55191caf 100644
> --- a/board/cm5200/cm5200.c
> +++ b/board/cm5200/cm5200.c
> @@ -161,14 +161,7 @@ int dram_init(void)
>    */
>   static void read_hw_id(hw_id_t hw_id)
>   {
> -	int i;
> -	for (i = 0; i < HW_ID_ELEM_COUNT; ++i)
> -		if (i2c_read(CONFIG_SYS_I2C_EEPROM,
> -				hw_id_format[i].offset,
> -				2,
> -				(uchar *)&hw_id[i][0],
> -				hw_id_format[i].length) != 0)
> -			printf("ERROR: can't read HW ID from EEPROM\n");
> +	printf("ERROR: can't read HW ID from EEPROM\n");
>   }
>
>
> @@ -221,7 +214,7 @@ static void compose_module_name(hw_id_t hw_id, char *buf)
>   	strcat(buf, tmp);
>   }
>
> -
> +#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C_SOFT)
>   /*
>    * Compose string with hostname.
>    * buf is assumed to have enough space, and be null-terminated.
> @@ -237,7 +230,7 @@ static void compose_hostname(hw_id_t hw_id, char *buf)
>   		*p = tolower(*p);
>
>   }
> -
> +#endif
>
>   #ifdef CONFIG_OF_BOARD_SETUP
>   /*
> @@ -270,15 +263,6 @@ int checkboard(void)
>   	hw_id_t hw_id_tmp;
>   	char module_name_tmp[MODULE_NAME_MAXLEN] = "";
>
> -	/*
> -	 * We need I2C to access HW ID data from EEPROM, so we call i2c_init()
> -	 * here despite the fact that it will be called again later on. We
> -	 * also use a little trick to silence I2C-related output.
> -	 */
> -	gd->flags |= GD_FLG_SILENT;
> -	i2c_init (CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
> -	gd->flags &= ~GD_FLG_SILENT;
> -
>   	read_hw_id(hw_id_tmp);
>   	identify_module(hw_id_tmp);	/* this sets gd->board_type */
>   	compose_module_name(hw_id_tmp, module_name_tmp);
> @@ -334,16 +318,16 @@ int misc_init_r(void)
>   			" device at address %02X:%04X\n", CONFIG_SYS_I2C_EEPROM,
>   			CONFIG_MAC_OFFSET);
>   	}
> +	hostname[0] = 0x00;
> +	/* set the hostname appropriate to the module we're running on */
> +	compose_hostname(hw_id, hostname);
> +	setenv("hostname", hostname);
> +
>   #endif /* defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C_SOFT) */
>   	if (!getenv("ethaddr"))
>   		printf(LOG_PREFIX "MAC address not set, networking is not "
>   					"operational\n");
>
> -	/* set the hostname appropriate to the module we're running on */
> -	hostname[0] = 0x00;
> -	compose_hostname(hw_id, hostname);
> -	setenv("hostname", hostname);
> -
>   	return 0;
>   }
>   #endif /* CONFIG_MISC_INIT_R */
> diff --git a/board/cm5200/cmd_cm5200.c b/board/cm5200/cmd_cm5200.c
> index 9c40ad7b2a..60097dc8c7 100644
> --- a/board/cm5200/cmd_cm5200.c
> +++ b/board/cm5200/cmd_cm5200.c
> @@ -13,34 +13,6 @@
>
>   #ifdef CONFIG_CMD_BSP
>
> -static int do_i2c_test(char * const argv[])
> -{
> -	unsigned char temp, temp1;
> -
> -	printf("Starting I2C Test\n"
> -		"Please set Jumper:\nI2C SDA 2-3\nI2C SCL 2-3\n\n"
> -		"Please press any key to start\n\n");
> -	getc();
> -
> -	temp = 0xf0; /* set io 0-4 as output */
> -	i2c_write(CONFIG_SYS_I2C_IO, 3, 1, (uchar *)&temp, 1);
> -
> -	printf("Press I2C4-7. LED I2C0-3 should have the same state\n\n"
> -		"Press any key to stop\n\n");
> -
> -	while (!tstc()) {
> -		i2c_read(CONFIG_SYS_I2C_IO, 0, 1, (uchar *)&temp, 1);
> -		temp1 = (temp >> 4) & 0x03;
> -		temp1 |= (temp >> 3) & 0x08; /* S302 -> LED303 */
> -		temp1 |= (temp >> 5) & 0x04; /* S303 -> LED302 */
> -		temp = temp1;
> -		i2c_write(CONFIG_SYS_I2C_IO, 1, 1, (uchar *)&temp, 1);
> -	}
> -	getc();
> -
> -	return 0;
> -}
> -
>   static int do_usb_test(char * const argv[])
>   {
>   	int i;
> @@ -387,9 +359,7 @@ static int cmd_fkt(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
>
>   	switch (argc) {
>   	case 2:
> -		if (strncmp(argv[1], "i2c", 3) == 0)
> -			rcode = do_i2c_test(argv);
> -		else if (strncmp(argv[1], "led", 3) == 0)
> +		if (strncmp(argv[1], "led", 3) == 0)
>   			rcode = do_led_test(argv);
>   		else if (strncmp(argv[1], "usb", 3) == 0)
>   			rcode = do_usb_test(argv);
> diff --git a/board/davedenx/aria/aria.c b/board/davedenx/aria/aria.c
> index e3441cad4e..e389819e9d 100644
> --- a/board/davedenx/aria/aria.c
> +++ b/board/davedenx/aria/aria.c
> @@ -29,9 +29,6 @@ int misc_init_r(void)
>   {
>   	u32 tmp;
>
> -	/* we use I2C-2 for on-board eeprom */
> -	i2c_set_bus_num(2);
> -
>   	tmp = in_be32((u32*)CONFIG_SYS_ARIA_FPGA_BASE);
>   	printf("FPGA:  %u-%u.%u.%u\n",
>   		(tmp & 0xFF000000) >> 24,
> diff --git a/board/esd/mecp5123/mecp5123.c b/board/esd/mecp5123/mecp5123.c
> index 66dc407bae..78a6b66110 100644
> --- a/board/esd/mecp5123/mecp5123.c
> +++ b/board/esd/mecp5123/mecp5123.c
> @@ -18,17 +18,7 @@ DECLARE_GLOBAL_DATA_PTR;
>
>   int eeprom_write_enable(unsigned dev_addr, int state)
>   {
> -	volatile immap_t *im = (immap_t *)CONFIG_SYS_IMMR;
> -
> -	if (dev_addr != CONFIG_SYS_I2C_EEPROM_ADDR)
> -		return -1;
> -
> -	if (state == 0)
> -		setbits_be32(&im->gpio.gpdat, 0x00100000);
> -	else
> -		clrbits_be32(&im->gpio.gpdat, 0x00100000);
> -
> -	return 0;
> +	return -ENOSYS;
>   }
>
>   int board_early_init_f(void)
> diff --git a/board/freescale/mpc5121ads/mpc5121ads.c b/board/freescale/mpc5121ads/mpc5121ads.c
> index f87579f193..d729056fd0 100644
> --- a/board/freescale/mpc5121ads/mpc5121ads.c
> +++ b/board/freescale/mpc5121ads/mpc5121ads.c
> @@ -174,27 +174,6 @@ int dram_init(void)
>
>   int misc_init_r(void)
>   {
> -	u8 tmp_val;
> -
> -	/* Using this for DIU init before the driver in linux takes over
> -	 *  Enable the TFP410 Encoder (I2C address 0x38)
> -	 */
> -
> -	i2c_set_bus_num(2);
> -	tmp_val = 0xBF;
> -	i2c_write(0x38, 0x08, 1, &tmp_val, sizeof(tmp_val));
> -	/* Verify if enabled */
> -	tmp_val = 0;
> -	i2c_read(0x38, 0x08, 1, &tmp_val, sizeof(tmp_val));
> -	debug("DVI Encoder Read: 0x%02x\n", tmp_val);
> -
> -	tmp_val = 0x10;
> -	i2c_write(0x38, 0x0A, 1, &tmp_val, sizeof(tmp_val));
> -	/* Verify if enabled */
> -	tmp_val = 0;
> -	i2c_read(0x38, 0x0A, 1, &tmp_val, sizeof(tmp_val));
> -	debug("DVI Encoder Read: 0x%02x\n", tmp_val);
> -
>   	return 0;
>   }
>
> diff --git a/board/ifm/ac14xx/ac14xx.c b/board/ifm/ac14xx/ac14xx.c
> index 348613736d..cd79e804a0 100644
> --- a/board/ifm/ac14xx/ac14xx.c
> +++ b/board/ifm/ac14xx/ac14xx.c
> @@ -17,7 +17,6 @@
>   #include <i2c.h>
>   #endif
>
> -static int eeprom_diag;
>   static int mac_diag;
>   static int gpio_diag;
>
> @@ -136,7 +135,6 @@ struct __attribute__ ((__packed__)) eeprom_layout {
>   #define HW_COMP_MAINCPU 2
>
>   static struct eeprom_layout eeprom_content;
> -static int eeprom_was_read;	/* has_been_read */
>   static int eeprom_is_valid;
>   static int eeprom_version;
>
> @@ -153,53 +151,7 @@ static int eeprom_version;
>
>   static int read_eeprom(void)
>   {
> -	int eeprom_datalen;
> -	int ret;
> -
> -	if (eeprom_was_read)
> -		return 0;
> -
> -	eeprom_is_valid = 0;
> -	ret = i2c_read(CONFIG_SYS_I2C_EEPROM_ADDR, 0,
> -			CONFIG_SYS_I2C_EEPROM_ADDR_LEN,
> -			(uchar *)&eeprom_content, sizeof(eeprom_content));
> -	if (eeprom_diag) {
> -		printf("DIAG: %s() read rc[%d], size[%d]\n",
> -			__func__, ret, sizeof(eeprom_content));
> -	}
> -
> -	if (ret != 0)
> -		return -1;
> -
> -	eeprom_was_read = 1;
> -
> -	/*
> -	 * check validity of EEPROM content
> -	 * (check version, length, optionally checksum)
> -	 */
> -	eeprom_is_valid = 1;
> -	eeprom_datalen = get_eeprom_field_int(eeprom_content.len);
> -	eeprom_version = get_eeprom_field_int(eeprom_content.version);
> -
> -	if (eeprom_diag) {
> -		printf("DIAG: %s() magic[%c%c%c] len[%d] ver[%d] type[%d]\n",
> -			__func__, eeprom_content.magic[0],
> -			eeprom_content.magic[1], eeprom_content.magic[2],
> -			eeprom_datalen, eeprom_version, eeprom_content.type);
> -	}
> -	if (strncmp(eeprom_content.magic, "ifm", strlen("ifm")) != 0)
> -		eeprom_is_valid = 0;
> -	if (eeprom_datalen < sizeof(struct eeprom_layout) - 5)
> -		eeprom_is_valid = 0;
> -	if ((eeprom_version != 1) && (eeprom_version != 2))
> -		eeprom_is_valid = 0;
> -	if (eeprom_content.type != HW_COMP_MAINCPU)
> -		eeprom_is_valid = 0;
> -
> -	if (eeprom_diag)
> -		printf("DIAG: %s() valid[%d]\n", __func__, eeprom_is_valid);
> -
> -	return ret;
> +	return -ENOSYS;
>   }
>
>   int mac_read_from_eeprom(void)
> @@ -324,9 +276,6 @@ int misc_init_r(void)
>   	char *s;
>   	int want_recovery;
>
> -	/* we use bus I2C-0 for the on-board eeprom */
> -	i2c_set_bus_num(0);
> -
>   	/* setup GPIO directions and initial values */
>   	gpio_configure();
>
> diff --git a/board/renesas/r0p7734/r0p7734.c b/board/renesas/r0p7734/r0p7734.c
> index 360e0a1a6f..d0b4537513 100644
> --- a/board/renesas/r0p7734/r0p7734.c
> +++ b/board/renesas/r0p7734/r0p7734.c
> @@ -44,17 +44,7 @@ int board_init(void)
>
>   int board_late_init(void)
>   {
> -	u8 mac[6];
> -
> -	/* Read Mac Address and set*/
> -	i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
> -	i2c_set_bus_num(CONFIG_SYS_I2C_MODULE);
> -
> -	/* Read MAC address */
> -	i2c_read(0x50, 0x10, 0, mac, 6);
> -
> -	if (is_valid_ethaddr(mac))
> -		eth_setenv_enetaddr("ethaddr", mac);
> +	printf("Cannot get MAC address from I2C\n");
>
>   	return 0;
>   }
> diff --git a/board/tqc/tqm5200/tqm5200.c b/board/tqc/tqm5200/tqm5200.c
> index 92db093dbf..d1d03cf362 100644
> --- a/board/tqc/tqm5200/tqm5200.c
> +++ b/board/tqc/tqm5200/tqm5200.c
> @@ -486,20 +486,14 @@ int board_early_init_f (void)
>
>   static int tfp410_read_reg(int reg, uchar *buf)
>   {
> -	if (i2c_read(CONFIG_SYS_TFP410_ADDR, reg, 1, buf, 1) != 0) {
> -		puts ("Error reading the chip.\n");
> -		return 1;
> -	}
> -	return 0;
> +	puts("Error reading the chip\n");
> +	return -ENOSYS;
>   }
>
>   static int tfp410_write_reg(int reg, uchar buf)
>   {
> -	if (i2c_write(CONFIG_SYS_TFP410_ADDR, reg, 1, &buf, 1) != 0) {
> -		puts ("Error writing the chip.\n");
> -		return 1;
> -	}
> -	return 0;
> +	puts("Error writing the chip\n");
> +	return -ENOSYS;
>   }
>
>   typedef struct _tfp410_config {
> @@ -525,12 +519,9 @@ static int charon_last_stage_init(void)
>   {
>   	volatile struct mpc5xxx_lpb *lpb =
>   		(struct mpc5xxx_lpb *) MPC5XXX_LPB;
> -	int	oldbus = i2c_get_bus_num();
>   	uchar	buf;
>   	int	i = 0;
>
> -	i2c_set_bus_num(CONFIG_SYS_TFP410_BUS);
> -
>   	/* check version */
>   	if (tfp410_read_reg(TFP410_REG_DEV_ID_H, &buf) != 0)
>   		return -1;
> @@ -551,7 +542,6 @@ static int charon_last_stage_init(void)
>   		i++;
>   	}
>   	printf("TFP410 initialized.\n");
> -	i2c_set_bus_num(oldbus);
>
>   	/* set deadcycle for cs3 to 0 */
>   	setbits_be32(&lpb->cs_deadcycle, 0xffffcfff);
> diff --git a/configs/MiniFAP_defconfig b/configs/MiniFAP_defconfig
> index e2fc169b5c..705297c686 100644
> --- a/configs/MiniFAP_defconfig
> +++ b/configs/MiniFAP_defconfig
> @@ -10,7 +10,6 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/O2D300_defconfig b/configs/O2D300_defconfig
> index 38101f05df..c0e9541b87 100644
> --- a/configs/O2D300_defconfig
> +++ b/configs/O2D300_defconfig
> @@ -4,7 +4,6 @@ CONFIG_TARGET_O2D300=y
>   CONFIG_OF_BOARD_SETUP=y
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O2DNT2_RAMBOOT_defconfig b/configs/O2DNT2_RAMBOOT_defconfig
> index 83006e5582..8cff44cf36 100644
> --- a/configs/O2DNT2_RAMBOOT_defconfig
> +++ b/configs/O2DNT2_RAMBOOT_defconfig
> @@ -8,7 +8,6 @@ CONFIG_HUSH_PARSER=y
>   CONFIG_AUTOBOOT_KEYED=y
>   CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press password to stop\n"
>   CONFIG_AUTOBOOT_STOP_STR="++++++++++"
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O2DNT2_defconfig b/configs/O2DNT2_defconfig
> index 4202d85203..f29abb83bc 100644
> --- a/configs/O2DNT2_defconfig
> +++ b/configs/O2DNT2_defconfig
> @@ -7,7 +7,6 @@ CONFIG_HUSH_PARSER=y
>   CONFIG_AUTOBOOT_KEYED=y
>   CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press password to stop\n"
>   CONFIG_AUTOBOOT_STOP_STR="++++++++++"
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O2D_defconfig b/configs/O2D_defconfig
> index b84a1c8839..534cfe12e2 100644
> --- a/configs/O2D_defconfig
> +++ b/configs/O2D_defconfig
> @@ -4,7 +4,6 @@ CONFIG_TARGET_O2D=y
>   CONFIG_OF_BOARD_SETUP=y
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O2I_defconfig b/configs/O2I_defconfig
> index efcc769ff4..acf42abe29 100644
> --- a/configs/O2I_defconfig
> +++ b/configs/O2I_defconfig
> @@ -4,7 +4,6 @@ CONFIG_TARGET_O2I=y
>   CONFIG_OF_BOARD_SETUP=y
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O2MNT_O2M110_defconfig b/configs/O2MNT_O2M110_defconfig
> index abdc53df21..de647c76b9 100644
> --- a/configs/O2MNT_O2M110_defconfig
> +++ b/configs/O2MNT_O2M110_defconfig
> @@ -5,7 +5,6 @@ CONFIG_OF_BOARD_SETUP=y
>   CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M110\""
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O2MNT_O2M112_defconfig b/configs/O2MNT_O2M112_defconfig
> index 06089fe3cf..b243e9cc0e 100644
> --- a/configs/O2MNT_O2M112_defconfig
> +++ b/configs/O2MNT_O2M112_defconfig
> @@ -5,7 +5,6 @@ CONFIG_OF_BOARD_SETUP=y
>   CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M112\""
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O2MNT_O2M113_defconfig b/configs/O2MNT_O2M113_defconfig
> index 1ea3f3a09b..1584058289 100644
> --- a/configs/O2MNT_O2M113_defconfig
> +++ b/configs/O2MNT_O2M113_defconfig
> @@ -5,7 +5,6 @@ CONFIG_OF_BOARD_SETUP=y
>   CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M113\""
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O2MNT_defconfig b/configs/O2MNT_defconfig
> index 0209085605..20bd31466e 100644
> --- a/configs/O2MNT_defconfig
> +++ b/configs/O2MNT_defconfig
> @@ -4,7 +4,6 @@ CONFIG_TARGET_O2MNT=y
>   CONFIG_OF_BOARD_SETUP=y
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/O3DNT_defconfig b/configs/O3DNT_defconfig
> index 49e1fbb45e..fad26c3f20 100644
> --- a/configs/O3DNT_defconfig
> +++ b/configs/O3DNT_defconfig
> @@ -4,7 +4,6 @@ CONFIG_TARGET_O3DNT=y
>   CONFIG_OF_BOARD_SETUP=y
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/TQM5200S_HIGHBOOT_defconfig b/configs/TQM5200S_HIGHBOOT_defconfig
> index 0c4e2923dc..1d020b3926 100644
> --- a/configs/TQM5200S_HIGHBOOT_defconfig
> +++ b/configs/TQM5200S_HIGHBOOT_defconfig
> @@ -7,7 +7,6 @@ CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/TQM5200S_defconfig b/configs/TQM5200S_defconfig
> index 9ef02e3dda..759780986b 100644
> --- a/configs/TQM5200S_defconfig
> +++ b/configs/TQM5200S_defconfig
> @@ -7,7 +7,6 @@ CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/TQM5200_B_HIGHBOOT_defconfig b/configs/TQM5200_B_HIGHBOOT_defconfig
> index 1f79bf84a2..6d35f6bf60 100644
> --- a/configs/TQM5200_B_HIGHBOOT_defconfig
> +++ b/configs/TQM5200_B_HIGHBOOT_defconfig
> @@ -10,7 +10,6 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/TQM5200_B_defconfig b/configs/TQM5200_B_defconfig
> index 6344195954..ad20abf5cc 100644
> --- a/configs/TQM5200_B_defconfig
> +++ b/configs/TQM5200_B_defconfig
> @@ -10,7 +10,6 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/TQM5200_STK100_defconfig b/configs/TQM5200_STK100_defconfig
> index ff0f4d31be..dad4508c9a 100644
> --- a/configs/TQM5200_STK100_defconfig
> +++ b/configs/TQM5200_STK100_defconfig
> @@ -10,7 +10,6 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/TQM5200_defconfig b/configs/TQM5200_defconfig
> index 027b55a8ca..3545578ef2 100644
> --- a/configs/TQM5200_defconfig
> +++ b/configs/TQM5200_defconfig
> @@ -9,7 +9,6 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/a4m072_defconfig b/configs/a4m072_defconfig
> index 25a06cf7a5..9b838b6480 100644
> --- a/configs/a4m072_defconfig
> +++ b/configs/a4m072_defconfig
> @@ -7,7 +7,6 @@ CONFIG_HUSH_PARSER=y
>   CONFIG_AUTOBOOT_KEYED=y
>   CONFIG_AUTOBOOT_PROMPT="autoboot in %d seconds\n"
>   CONFIG_AUTOBOOT_DELAY_STR="asdfg"
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/ac14xx_defconfig b/configs/ac14xx_defconfig
> index e3b7793e04..930ec8acf2 100644
> --- a/configs/ac14xx_defconfig
> +++ b/configs/ac14xx_defconfig
> @@ -5,7 +5,6 @@ CONFIG_FIT=y
>   CONFIG_OF_BOARD_SETUP=y
>   CONFIG_SYS_PROMPT="ac14xx> "
>   CONFIG_CMD_ASKENV=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/ap_sh4a_4a_defconfig b/configs/ap_sh4a_4a_defconfig
> index 75cf53fe21..41c8be9120 100644
> --- a/configs/ap_sh4a_4a_defconfig
> +++ b/configs/ap_sh4a_4a_defconfig
> @@ -13,7 +13,6 @@ CONFIG_VERSION_VARIABLE=y
>   # CONFIG_CMD_ENV_EXISTS is not set
>   # CONFIG_CMD_LOADB is not set
>   # CONFIG_CMD_LOADS is not set
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_FPGA is not set
>   # CONFIG_CMD_ECHO is not set
>   # CONFIG_CMD_ITEST is not set
> diff --git a/configs/apx4devkit_defconfig b/configs/apx4devkit_defconfig
> index 0e789948d6..5c30fe3ce7 100644
> --- a/configs/apx4devkit_defconfig
> +++ b/configs/apx4devkit_defconfig
> @@ -14,7 +14,6 @@ CONFIG_HUSH_PARSER=y
>   # CONFIG_CMD_IMLS is not set
>   # CONFIG_CMD_FLASH is not set
>   CONFIG_CMD_MMC=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/aria_defconfig b/configs/aria_defconfig
> index 963661ab2d..0f1432f9a8 100644
> --- a/configs/aria_defconfig
> +++ b/configs/aria_defconfig
> @@ -5,7 +5,6 @@ CONFIG_OF_BOARD_SETUP=y
>   CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/aspenite_defconfig b/configs/aspenite_defconfig
> index 26654426ed..0ac39eabd2 100644
> --- a/configs/aspenite_defconfig
> +++ b/configs/aspenite_defconfig
> @@ -6,7 +6,6 @@ CONFIG_BOOTDELAY=3
>   CONFIG_BOARD_EARLY_INIT_F=y
>   # CONFIG_CMD_IMLS is not set
>   # CONFIG_CMD_FLASH is not set
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   # CONFIG_CMD_NET is not set
>   # CONFIG_CMD_NFS is not set
> diff --git a/configs/cam5200_defconfig b/configs/cam5200_defconfig
> index 725a3b09d3..26d30024b5 100644
> --- a/configs/cam5200_defconfig
> +++ b/configs/cam5200_defconfig
> @@ -7,7 +7,6 @@ CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/cam5200_niosflash_defconfig b/configs/cam5200_niosflash_defconfig
> index 7bd95fae68..5442404241 100644
> --- a/configs/cam5200_niosflash_defconfig
> +++ b/configs/cam5200_niosflash_defconfig
> @@ -7,7 +7,6 @@ CONFIG_BOOTDELAY=5
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/charon_defconfig b/configs/charon_defconfig
> index 4b604ff38c..dd31264d8b 100644
> --- a/configs/charon_defconfig
> +++ b/configs/charon_defconfig
> @@ -9,7 +9,6 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/cm5200_defconfig b/configs/cm5200_defconfig
> index 8b12a3aec2..5d598a6068 100644
> --- a/configs/cm5200_defconfig
> +++ b/configs/cm5200_defconfig
> @@ -6,7 +6,6 @@ CONFIG_BOOTDELAY=5
>   CONFIG_SILENT_CONSOLE=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/digsy_mtc_RAMBOOT_defconfig b/configs/digsy_mtc_RAMBOOT_defconfig
> index bf6ca8ddf3..54b98b9b01 100644
> --- a/configs/digsy_mtc_RAMBOOT_defconfig
> +++ b/configs/digsy_mtc_RAMBOOT_defconfig
> @@ -13,7 +13,6 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
>   CONFIG_AUTOBOOT_DELAY_STR="d"
>   CONFIG_AUTOBOOT_STOP_STR=" "
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/digsy_mtc_defconfig b/configs/digsy_mtc_defconfig
> index 7cdd3c1603..6636618987 100644
> --- a/configs/digsy_mtc_defconfig
> +++ b/configs/digsy_mtc_defconfig
> @@ -11,7 +11,6 @@ CONFIG_AUTOBOOT_KEYED=y
>   CONFIG_AUTOBOOT_PROMPT="autoboot in %d seconds\n"
>   CONFIG_AUTOBOOT_DELAY_STR=" "
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/digsy_mtc_rev5_RAMBOOT_defconfig b/configs/digsy_mtc_rev5_RAMBOOT_defconfig
> index 03555d421d..27e9beda99 100644
> --- a/configs/digsy_mtc_rev5_RAMBOOT_defconfig
> +++ b/configs/digsy_mtc_rev5_RAMBOOT_defconfig
> @@ -13,7 +13,6 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
>   CONFIG_AUTOBOOT_DELAY_STR="d"
>   CONFIG_AUTOBOOT_STOP_STR=" "
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/digsy_mtc_rev5_defconfig b/configs/digsy_mtc_rev5_defconfig
> index 11f2a8ae17..c55b815a50 100644
> --- a/configs/digsy_mtc_rev5_defconfig
> +++ b/configs/digsy_mtc_rev5_defconfig
> @@ -13,7 +13,6 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
>   CONFIG_AUTOBOOT_DELAY_STR="d"
>   CONFIG_AUTOBOOT_STOP_STR=" "
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/fo300_defconfig b/configs/fo300_defconfig
> index d33f98dfa5..fada953186 100644
> --- a/configs/fo300_defconfig
> +++ b/configs/fo300_defconfig
> @@ -12,7 +12,6 @@ CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/gplugd_defconfig b/configs/gplugd_defconfig
> index 97bb976803..f44b68dae8 100644
> --- a/configs/gplugd_defconfig
> +++ b/configs/gplugd_defconfig
> @@ -6,7 +6,6 @@ CONFIG_BOOTDELAY=3
>   CONFIG_BOARD_EARLY_INIT_F=y
>   # CONFIG_CMD_IMLS is not set
>   # CONFIG_CMD_FLASH is not set
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_FPGA is not set
>   # CONFIG_CMD_SETEXPR is not set
> diff --git a/configs/ipek01_defconfig b/configs/ipek01_defconfig
> index 45aabbfc5d..9e89a0d432 100644
> --- a/configs/ipek01_defconfig
> +++ b/configs/ipek01_defconfig
> @@ -7,7 +7,6 @@ CONFIG_BOOTDELAY=5
>   # CONFIG_CONSOLE_MUX is not set
>   CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>   CONFIG_LOOPW=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/m28evk_defconfig b/configs/m28evk_defconfig
> index c372450592..08f9fccd91 100644
> --- a/configs/m28evk_defconfig
> +++ b/configs/m28evk_defconfig
> @@ -22,7 +22,6 @@ CONFIG_CMD_GREPENV=y
>   CONFIG_CMD_MMC=y
>   CONFIG_CMD_SF=y
>   CONFIG_CMD_SPI=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   CONFIG_CMD_GPIO=y
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/mecp5123_defconfig b/configs/mecp5123_defconfig
> index c233e9ea1a..db52077e1a 100644
> --- a/configs/mecp5123_defconfig
> +++ b/configs/mecp5123_defconfig
> @@ -6,7 +6,6 @@ CONFIG_BOOTDELAY=5
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/motionpro_defconfig b/configs/motionpro_defconfig
> index b770820dff..d4adb3e115 100644
> --- a/configs/motionpro_defconfig
> +++ b/configs/motionpro_defconfig
> @@ -8,7 +8,6 @@ CONFIG_AUTOBOOT_KEYED=y
>   CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press \"<Esc><Esc>\" to stop\n"
>   CONFIG_AUTOBOOT_STOP_STR="\x1b\x1b"
>   CONFIG_CMD_ASKENV=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/mpc5121ads_defconfig b/configs/mpc5121ads_defconfig
> index 2dde203561..47c4e5ace7 100644
> --- a/configs/mpc5121ads_defconfig
> +++ b/configs/mpc5121ads_defconfig
> @@ -6,7 +6,6 @@ CONFIG_BOOTDELAY=5
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/mpc5121ads_rev2_defconfig b/configs/mpc5121ads_rev2_defconfig
> index 80033a8a78..ef700d0773 100644
> --- a/configs/mpc5121ads_rev2_defconfig
> +++ b/configs/mpc5121ads_rev2_defconfig
> @@ -7,7 +7,6 @@ CONFIG_BOOTDELAY=5
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/configs/pcm030_LOWBOOT_defconfig b/configs/pcm030_LOWBOOT_defconfig
> index 456a699519..2933326e5d 100644
> --- a/configs/pcm030_LOWBOOT_defconfig
> +++ b/configs/pcm030_LOWBOOT_defconfig
> @@ -4,7 +4,6 @@ CONFIG_TARGET_PCM030=y
>   CONFIG_OF_BOARD_SETUP=y
>   CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF000000"
>   CONFIG_BOOTDELAY=3
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/pcm030_defconfig b/configs/pcm030_defconfig
> index 8c70e02479..ff9f4e9f4f 100644
> --- a/configs/pcm030_defconfig
> +++ b/configs/pcm030_defconfig
> @@ -4,7 +4,6 @@ CONFIG_TARGET_PCM030=y
>   CONFIG_OF_BOARD_SETUP=y
>   CONFIG_BOOTDELAY=3
>   CONFIG_SYS_PROMPT="uboot> "
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/pdm360ng_defconfig b/configs/pdm360ng_defconfig
> index 7a94f9cff5..9beaffbb0e 100644
> --- a/configs/pdm360ng_defconfig
> +++ b/configs/pdm360ng_defconfig
> @@ -10,7 +10,6 @@ CONFIG_SILENT_CONSOLE=y
>   # CONFIG_CONSOLE_MUX is not set
>   CONFIG_HUSH_PARSER=y
>   CONFIG_CMD_ASKENV=y
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
>   CONFIG_CMD_MII=y
> diff --git a/configs/r0p7734_defconfig b/configs/r0p7734_defconfig
> index c5c3d52718..91b08dc24f 100644
> --- a/configs/r0p7734_defconfig
> +++ b/configs/r0p7734_defconfig
> @@ -13,7 +13,6 @@ CONFIG_VERSION_VARIABLE=y
>   # CONFIG_CMD_ENV_EXISTS is not set
>   # CONFIG_CMD_LOADB is not set
>   # CONFIG_CMD_LOADS is not set
> -CONFIG_CMD_I2C=y
>   # CONFIG_CMD_FPGA is not set
>   # CONFIG_CMD_ECHO is not set
>   # CONFIG_CMD_ITEST is not set
> diff --git a/configs/v38b_defconfig b/configs/v38b_defconfig
> index 9440b8c26a..38c3541214 100644
> --- a/configs/v38b_defconfig
> +++ b/configs/v38b_defconfig
> @@ -3,7 +3,6 @@ CONFIG_MPC5xxx=y
>   CONFIG_TARGET_V38B=y
>   CONFIG_BOOTDELAY=3
>   CONFIG_BOARD_EARLY_INIT_F=y
> -CONFIG_CMD_I2C=y
>   CONFIG_CMD_USB=y
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_DHCP=y
> diff --git a/include/common.h b/include/common.h
> index 83e4037a86..45f190a600 100644
> --- a/include/common.h
> +++ b/include/common.h
> @@ -499,9 +499,19 @@ void	reset_phy     (void);
>   void	fdc_hw_init   (void);
>
>   /* $(BOARD)/eeprom.c */
> +#ifdef CONFIG_CMD_EEPROM
>   void eeprom_init  (int bus);
>   int  eeprom_read  (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned cnt);
>   int  eeprom_write (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned cnt);
> +#else
> +/*
> + * Some EEPROM code is depecated because it used the legacy I2C interface. Add
> + * some macros here so we don't have to touch every one of those uses
> + */
> +#define eeprom_init(bus)
> +#define eeprom_read(dev_addr, offset, buffer, cnt) ((void)-ENOSYS)
> +#define eeprom_write(dev_addr, offset, buffer, cnt) ((void)-ENOSYS)
> +#endif
>
>   /*
>    * Set this up regardless of board
> diff --git a/include/configs/M54418TWR.h b/include/configs/M54418TWR.h
> index cbe0d1ef63..67bcf99091 100644
> --- a/include/configs/M54418TWR.h
> +++ b/include/configs/M54418TWR.h
> @@ -167,7 +167,6 @@
>
>   /* I2c */
>   #undef CONFIG_SYS_FSL_I2C
> -#undef CONFIG_HARD_I2C		/* I2C with hardware support */
>   #undef	CONFIG_SYS_I2C_SOFT	/* I2C bit-banged */
>   /* I2C speed and slave address  */
>   #define CONFIG_SYS_I2C_SPEED		80000
> diff --git a/include/configs/TQM5200.h b/include/configs/TQM5200.h
> index e5911d0d96..7685ac2318 100644
> --- a/include/configs/TQM5200.h
> +++ b/include/configs/TQM5200.h
> @@ -124,8 +124,7 @@
>   #ifndef CONFIG_CAM5200
>   /* POST support */
>   #define CONFIG_POST		(CONFIG_SYS_POST_MEMORY   | \
> -				 CONFIG_SYS_POST_CPU	   | \
> -				 CONFIG_SYS_POST_I2C)
> +				 CONFIG_SYS_POST_CPU)
>   #endif
>
>   #ifdef CONFIG_POST
> @@ -144,8 +143,6 @@
>   /*
>    * Command line configuration.
>    */
> -#define CONFIG_CMD_DATE
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_JFFS2
>   #define CONFIG_CMD_REGINFO
>   #define CONFIG_CMD_BSP
> @@ -289,54 +286,6 @@
>   #endif
>
>   /*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C		1	/* I2C with hardware support */
> -#ifdef CONFIG_TQM5200_REV100
> -#define CONFIG_SYS_I2C_MODULE		1	/* Select I2C module #1 for rev. 100 board */
> -#else
> -#define CONFIG_SYS_I2C_MODULE		2	/* Select I2C module #2 for all other revs */
> -#endif
> -
> -/*
> - * I2C clock frequency
> - *
> - * Please notice, that the resulting clock frequency could differ from the
> - * configured value. This is because the I2C clock is derived from system
> - * clock over a frequency divider with only a few divider values. U-Boot
> - * calculates the best approximation for CONFIG_SYS_I2C_SPEED. However the calculated
> - * approximation allways lies below the configured value, never above.
> - */
> -#define CONFIG_SYS_I2C_SPEED		100000 /* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
> -/*
> - * EEPROM configuration for onboard EEPROM M24C32 (M24C64 should work
> - * also). For other EEPROMs configuration should be verified. On Mini-FAP the
> - * EEPROM (24C64) is on the same I2C address (but on other I2C bus), so the
> - * same configuration could be used.
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x50	/* 1010000x */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		2
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	5	/* =32 Bytes per write */
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	20
> -
> -/*
> - * HW-Monitor configuration on Mini-FAP
> - */
> -#if defined (CONFIG_MINIFAP)
> -#define CONFIG_SYS_I2C_HWMON_ADDR		0x2C
> -#endif
> -
> -/* List of I2C addresses to be verified by POST */
> -#if defined (CONFIG_MINIFAP)
> -#undef CONFIG_SYS_POST_I2C_ADDRS
> -#define CONFIG_SYS_POST_I2C_ADDRS	{CONFIG_SYS_I2C_EEPROM_ADDR,	\
> -					 CONFIG_SYS_I2C_HWMON_ADDR,	\
> -					 CONFIG_SYS_I2C_SLAVE}
> -#endif
> -
> -/*
>    * Flash configuration
>    */
>   #define CONFIG_SYS_FLASH_BASE		0xFC000000
> @@ -555,18 +504,6 @@
>   #endif
>
>   /*
> - * RTC configuration
> - */
> -#if defined (CONFIG_STK52XX) && !defined (CONFIG_STK52XX_REV100)
> -# define CONFIG_RTC_M41T11 1
> -# define CONFIG_SYS_I2C_RTC_ADDR 0x68
> -# define CONFIG_SYS_M41T11_BASE_YEAR	1900    /* because Linux uses the same base
> -					   year */
> -#else
> -# define CONFIG_RTC_MPC5200	1	/* use internal MPC5200 RTC */
> -#endif
> -
> -/*
>    * Miscellaneous configurable options
>    */
>   #define CONFIG_SYS_LONGHELP			/* undef to save memory	    */
> diff --git a/include/configs/a4m072.h b/include/configs/a4m072.h
> index e07a782fec..abd3fbb136 100644
> --- a/include/configs/a4m072.h
> +++ b/include/configs/a4m072.h
> @@ -81,7 +81,6 @@
>   /*
>    * Command line configuration.
>    */
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_IDE
>   #define CONFIG_CMD_DISPLAY
>
> @@ -147,25 +146,6 @@
>   #undef CONFIG_SYS_IPBCLK_EQUALS_XLBCLK		/* define for 133MHz speed */
>
>   /*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C			1	/* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE		2	/* Select I2C module #1 or #2 */
> -
> -#define CONFIG_SYS_I2C_SPEED		100000 /* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
> -/*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x52	/* 1010010x */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		2
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	6
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	10
> -#define CONFIG_SYS_EEPROM_WREN			1
> -#define CONFIG_SYS_EEPROM_WP			GPIO_PSC2_4
> -
> -/*
>    * Flash configuration
>    */
>   #define CONFIG_SYS_FLASH_BASE		0xFE000000
> diff --git a/include/configs/ac14xx.h b/include/configs/ac14xx.h
> index ee015bb83d..2a46e9b864 100644
> --- a/include/configs/ac14xx.h
> +++ b/include/configs/ac14xx.h
> @@ -336,29 +336,12 @@
>
>   #define CONFIG_CMDLINE_EDITING		1	/* command line history */
>
> -/* I2C */
> -#define CONFIG_HARD_I2C			/* I2C with hardware support */
> -#define CONFIG_I2C_MULTI_BUS
> -
> -/* I2C speed and slave address */
> -#define CONFIG_SYS_I2C_SPEED		100000
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
>   /*
>    * IIM - IC Identification Module
>    */
>   #undef CONFIG_FSL_IIM
>
>   /*
> - * EEPROM configuration for Atmel AT24C01:
> - * 8-bit addresses, 30ms write delay, 32-Byte Page Write Mode
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		1
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x52
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	30
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	5
> -
> -/*
>    * Ethernet configuration
>    */
>   #define CONFIG_MPC512x_FEC		1
> @@ -384,7 +367,6 @@
>   #define CONFIG_LOADS_ECHO		1
>   #define CONFIG_SYS_LOADS_BAUD_CHANGE	1
>
> -#define CONFIG_CMD_EEPROM
>   #undef CONFIG_CMD_FUSE
>   #undef CONFIG_CMD_IDE
>   #define CONFIG_CMD_JFFS2
> diff --git a/include/configs/ap_sh4a_4a.h b/include/configs/ap_sh4a_4a.h
> index 5f5882dc8e..d3d72b634d 100644
> --- a/include/configs/ap_sh4a_4a.h
> +++ b/include/configs/ap_sh4a_4a.h
> @@ -35,20 +35,6 @@
>   #define CONFIG_BITBANGMII
>   #define CONFIG_BITBANGMII_MULTI
>
> -/* I2C */
> -#define CONFIG_SH_SH7734_I2C	1
> -#define CONFIG_HARD_I2C			1
> -#define CONFIG_I2C_MULTI_BUS	1
> -#define CONFIG_SYS_MAX_I2C_BUS	2
> -#define CONFIG_SYS_I2C_MODULE	0
> -#define CONFIG_SYS_I2C_SPEED	400000 /* 400 kHz */
> -#define CONFIG_SYS_I2C_SLAVE	0x50
> -#define CONFIG_SH_I2C_DATA_HIGH	4
> -#define CONFIG_SH_I2C_DATA_LOW	5
> -#define CONFIG_SH_I2C_CLOCK		500000000
> -#define CONFIG_SH_I2C_BASE0		0xFFC70000
> -#define CONFIG_SH_I2C_BASE1		0xFFC71000
> -
>   /* undef to save memory	*/
>   #define CONFIG_SYS_LONGHELP
>   /* Monitor Command Prompt */
> diff --git a/include/configs/apx4devkit.h b/include/configs/apx4devkit.h
> index 5ae622c205..cce39f27c7 100644
> --- a/include/configs/apx4devkit.h
> +++ b/include/configs/apx4devkit.h
> @@ -20,7 +20,6 @@
>
>   /* U-Boot Commands */
>
> -#define CONFIG_CMD_DATE
>   #define CONFIG_CMD_NAND
>
>   /* Memory configuration */
> @@ -80,12 +79,6 @@
>   #define CONFIG_USB_MAX_CONTROLLER_COUNT	1
>   #endif
>
> -/* RTC */
> -#ifdef CONFIG_CMD_DATE
> -#define CONFIG_RTC_PCF8563
> -#define CONFIG_SYS_I2C_RTC_ADDR		0x51
> -#endif
> -
>   /* Boot Linux */
>   #define CONFIG_BOOTFILE			"uImage"
>   #define CONFIG_BOOTCOMMAND		"run bootcmd_nand"
> diff --git a/include/configs/aria.h b/include/configs/aria.h
> index 94f6605d46..4d946fc44a 100644
> --- a/include/configs/aria.h
> +++ b/include/configs/aria.h
> @@ -340,32 +340,12 @@
>
>   #endif
>
> -/* I2C */
> -#define CONFIG_HARD_I2C			/* I2C with hardware support */
> -#define CONFIG_I2C_MULTI_BUS
> -
> -/* I2C speed and slave address */
> -#define CONFIG_SYS_I2C_SPEED		100000
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -#if 0
> -#define CONFIG_SYS_I2C_NOPROBES	{{0,0x69}}	/* Don't probe these addrs */
> -#endif
> -
>   /*
>    * IIM - IC Identification Module
>    */
>   #undef CONFIG_FSL_IIM
>
>   /*
> - * EEPROM configuration for Atmel AT24C32A-10TQ-2.7:
> - * 16-bit addresses, 10ms write delay, 32-Byte Page Write Mode
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		2
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x50
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	10
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	5
> -
> -/*
>    * Ethernet configuration
>    */
>   #define CONFIG_MPC512x_FEC		1
> @@ -392,7 +372,6 @@
>   #define CONFIG_LOADS_ECHO		1
>   #define CONFIG_SYS_LOADS_BAUD_CHANGE	1
>
> -#define CONFIG_CMD_EEPROM
>   #undef CONFIG_CMD_FUSE
>   #undef CONFIG_CMD_IDE
>   #define CONFIG_CMD_JFFS2
> diff --git a/include/configs/axs10x.h b/include/configs/axs10x.h
> index 768e8fbfa4..66e8cd5e9a 100644
> --- a/include/configs/axs10x.h
> +++ b/include/configs/axs10x.h
> @@ -100,7 +100,7 @@
>   /*
>    * Environment settings
>    */
> -#define CONFIG_ENV_IS_IN_EEPROM
> +#define CONFIG_ENV_IS_NOWHERE
>   #define CONFIG_ENV_SIZE			SZ_512
>   #define CONFIG_ENV_OFFSET		0
>
> diff --git a/include/configs/cm5200.h b/include/configs/cm5200.h
> index 51a5f6dce7..4f23de7a60 100644
> --- a/include/configs/cm5200.h
> +++ b/include/configs/cm5200.h
> @@ -47,7 +47,7 @@
>   /*
>    * POST support
>    */
> -#define CONFIG_POST		(CONFIG_SYS_POST_MEMORY | CONFIG_SYS_POST_CPU | CONFIG_SYS_POST_I2C)
> +#define CONFIG_POST		(CONFIG_SYS_POST_MEMORY | CONFIG_SYS_POST_CPU)
>   #define MPC5XXX_SRAM_POST_SIZE	(MPC5XXX_SRAM_SIZE - 4)
>   /* List of I2C addresses to be verified by POST */
>   #define CONFIG_SYS_POST_I2C_ADDRS	{CONFIG_SYS_I2C_SLAVE,	\
> @@ -203,16 +203,6 @@
>   					"-(config)"
>
>   /*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C		1	/* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE		2	/* Select I2C module #2 */
> -#define CONFIG_SYS_I2C_SPEED		40000	/* 40 kHz */
> -#define CONFIG_SYS_I2C_SLAVE		0x0
> -#define CONFIG_SYS_I2C_IO		0x38	/* PCA9554AD I2C I/O port address */
> -#define CONFIG_SYS_I2C_EEPROM		0x53	/* I2C EEPROM device address */
> -
> -/*
>    * RTC configuration
>    */
>   #define CONFIG_RTC_MPC5200	1	/* use internal MPC5200 RTC */
> diff --git a/include/configs/digsy_mtc.h b/include/configs/digsy_mtc.h
> index 71068a8ae3..f8825ee2bb 100644
> --- a/include/configs/digsy_mtc.h
> +++ b/include/configs/digsy_mtc.h
> @@ -88,9 +88,7 @@
>   #ifdef CONFIG_VIDEO
>   #define CONFIG_CMD_BMP
>   #endif
> -#define CONFIG_CMD_DATE
>   #define CONFIG_CMD_DIAG
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_IDE
>   #define CONFIG_CMD_IRQ
>   #define CONFIG_CMD_PCI
> @@ -211,36 +209,6 @@
>   #define CONFIG_BOOTCOMMAND	"run mtcb_start"
>
>   /*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C		1
> -#define CONFIG_SYS_I2C_MODULE	1
> -#define CONFIG_SYS_I2C_SPEED	100000
> -#define CONFIG_SYS_I2C_SLAVE	0x7F
> -
> -/*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x50	/* 1010000x */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 	1
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	3
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	70
> -
> -/*
> - * RTC configuration
> - */
> -#if defined(CONFIG_DIGSY_REV5)
> -#define CONFIG_SYS_I2C_RTC_ADDR	0x56
> -#define CONFIG_RTC_RV3029
> -/* Enable 5k Ohm trickle charge resistor */
> -#define CONFIG_SYS_RV3029_TCR	0x20
> -#else
> -#define CONFIG_RTC_DS1337
> -#define CONFIG_SYS_I2C_RTC_ADDR	0x68
> -#define CONFIG_SYS_DS1339_TCR_VAL	0xAB	/* diode + 4k resistor */
> -#endif
> -
> -/*
>    * Flash configuration
>    */
>   #define	CONFIG_SYS_FLASH_CFI		1
> diff --git a/include/configs/ids8313.h b/include/configs/ids8313.h
> index e2c2552e7c..38eb8f4bfd 100644
> --- a/include/configs/ids8313.h
> +++ b/include/configs/ids8313.h
> @@ -165,7 +165,6 @@
>   #define CONFIG_TSEC2
>   #define CONFIG_TSEC_ENET
>   #define CONFIG_HARD_SPI
> -#define CONFIG_HARD_I2C
>
>   /*
>    * NOR FLASH setup
> diff --git a/include/configs/ipek01.h b/include/configs/ipek01.h
> index a99e928e2e..cf7cad0796 100644
> --- a/include/configs/ipek01.h
> +++ b/include/configs/ipek01.h
> @@ -91,7 +91,6 @@
>   #ifdef CONFIG_VIDEO
>   #define CONFIG_CMD_BMP		/* BMP support */
>   #endif
> -#define CONFIG_CMD_DATE		/* support for RTC, date/time...*/
>   #define CONFIG_CMD_IDE		/* IDE harddisk support */
>   #define CONFIG_CMD_IRQ		/* irqinfo */
>   #define CONFIG_CMD_PCI		/* pciinfo */
> @@ -154,29 +153,6 @@
>   #define OF_SOC			"soc5200 at f0000000"
>   #define OF_TBCLK		(bd->bi_busfreq / 4)
>
> -/*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C		1	/* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE	2	/* Select I2C module #1 or #2 */
> -
> -#define CONFIG_SYS_I2C_SPEED	100000	/* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE	0x7F
> -
> -/*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x53
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		2
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	6
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	10
> -
> -/*
> - * RTC configuration
> - */
> -#define CONFIG_RTC_PCF8563
> -#define CONFIG_SYS_I2C_RTC_ADDR		0x51
> -
>   #define CONFIG_SYS_FLASH_BASE		0xFC000000
>   #define CONFIG_SYS_FLASH_SIZE		0x01000000
>   #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + \
> diff --git a/include/configs/jupiter.h b/include/configs/jupiter.h
> index 0d97317c7f..4461623118 100644
> --- a/include/configs/jupiter.h
> +++ b/include/configs/jupiter.h
> @@ -127,25 +127,6 @@
>   #define OF_STDOUT_PATH		"/soc5200 at f0000000/serial at 2000"
>   #endif
>
> -#if 0
> -/*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C		1	/* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE		2	/* Select I2C module #1 or #2 */
> -
> -#define CONFIG_SYS_I2C_SPEED		100000 /* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
> -/*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x50	/* 1010000x */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		1
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	3
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	70
> -#endif
> -
>   /*
>    * Flash configuration
>    */
> diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h
> index 7f98f1f8a8..f19eaa425e 100644
> --- a/include/configs/m28evk.h
> +++ b/include/configs/m28evk.h
> @@ -18,7 +18,6 @@
>
>   #define CONFIG_CMD_BMP
>   #define CONFIG_CMD_DATE
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_NAND
>   #define CONFIG_CMD_NAND_TRIMFFS
>
> @@ -65,11 +64,6 @@
>   #define CONFIG_FEC_MXC
>   #endif
>
> -/* EEPROM */
> -#ifdef CONFIG_CMD_EEPROM
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2
> -#endif
> -
>   /* RTC */
>   #ifdef CONFIG_CMD_DATE
>   /* Use the internal RTC in the MXS chip */
> diff --git a/include/configs/manroland/mpc5200-common.h b/include/configs/manroland/mpc5200-common.h
> index 60e8716a79..79ba95ec3b 100644
> --- a/include/configs/manroland/mpc5200-common.h
> +++ b/include/configs/manroland/mpc5200-common.h
> @@ -35,36 +35,6 @@
>   #define CONFIG_SYS_IPBCLK_EQUALS_XLBCLK		/* define for 133MHz speed */
>
>   /*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C		1	/* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE		2	/* Select I2C module #1 or #2 */
> -
> -#define CONFIG_SYS_I2C_SPEED		100000 /* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
> -/*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x58
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		1
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	4
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	10
> -
> -/*
> - * RTC configuration
> - */
> -#define CONFIG_RTC_PCF8563
> -#define CONFIG_SYS_I2C_RTC_ADDR		0x51
> -
> -/* I2C SYSMON (LM75) */
> -#define CONFIG_DTT_LM81			1	/* ON Semi's LM75	*/
> -#define CONFIG_DTT_SENSORS		{0}	/* Sensor addresses	*/
> -#define CONFIG_SYS_DTT_MAX_TEMP		70
> -#define CONFIG_SYS_DTT_LOW_TEMP		-30
> -#define CONFIG_SYS_DTT_HYSTERESIS		3
> -
> -/*
>    * Flash configuration
>    */
>   #define CONFIG_SYS_FLASH_BASE		0xFF800000
> diff --git a/include/configs/mecp5123.h b/include/configs/mecp5123.h
> index dbb242696b..fe94e663c5 100644
> --- a/include/configs/mecp5123.h
> +++ b/include/configs/mecp5123.h
> @@ -241,27 +241,12 @@
>
>   #define CONFIG_CMDLINE_EDITING	1	/* add command line history	*/
>
> -/* I2C */
> -#define CONFIG_HARD_I2C			/* I2C with hardware support */
> -#define CONFIG_I2C_MULTI_BUS
> -#define CONFIG_SYS_I2C_SPEED		400000	/* I2C speed */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F	/* slave address */
> -
>   /*
>    * IIM - IC Identification Module
>    */
>   #undef CONFIG_FSL_IIM
>
>   /*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2	/* 16-bit EEPROM address */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* Atmel: AT24C32A-10TQ-2.7 */
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10	/* 10ms of delay */
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 5	/* 32-Byte Page Write Mode */
> -#define CONFIG_SYS_EEPROM_WREN			/* Use EEPROM write protect */
> -
> -/*
>    * Ethernet configuration
>    */
>   #define CONFIG_MPC512x_FEC	1
> @@ -280,7 +265,7 @@
>   /*
>    * Environment
>    */
> -#define CONFIG_ENV_IS_IN_EEPROM		/* Store env in I2C EEPROM	*/
> +#define CONFIG_ENV_IS_NOWHERE		/* Store env in I2C EEPROM	*/
>   #define CONFIG_ENV_SIZE		0x1000
>   #define CONFIG_ENV_OFFSET       0x0000	/* environment starts here	*/
>
> @@ -288,8 +273,6 @@
>   #define CONFIG_SYS_LOADS_BAUD_CHANGE	/* allow baudrate change	*/
>
>   #define CONFIG_CMD_REGINFO
> -#define CONFIG_CMD_EEPROM
> -#define CONFIG_CMD_DATE
>   #undef CONFIG_CMD_FUSE
>   #undef CONFIG_CMD_IDE
>   #define CONFIG_CMD_JFFS2
> diff --git a/include/configs/motionpro.h b/include/configs/motionpro.h
> index 7ebcd03872..363053da38 100644
> --- a/include/configs/motionpro.h
> +++ b/include/configs/motionpro.h
> @@ -34,9 +34,7 @@
>    * Command line configuration.
>    */
>   #define CONFIG_CMD_BEDBUG
> -#define CONFIG_CMD_DATE
>   #define CONFIG_CMD_DTT
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_IDE
>   #define CONFIG_CMD_IMMAP
>   #define CONFIG_CMD_JFFS2
> @@ -258,21 +256,6 @@
>   #define CONFIG_SYS_ATA_STRIDE		4
>
>   /*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C		1	/* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE		2	/* select I2C module #2 */
> -#define CONFIG_SYS_I2C_SPEED		100000	/* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
> -/*
> - * EEPROM configuration
> - */
> -#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 */
> -
> -/*
>    * RTC configuration
>    */
>   #define CONFIG_RTC_DS1337	1
> @@ -286,12 +269,6 @@
>   #define LED_ON			0x00000010
>
>   /*
> - * Temperature sensor
> - */
> -#define CONFIG_DTT_LM75		1
> -#define CONFIG_DTT_SENSORS	{ 0x49 }
> -
> -/*
>    * Environment settings
>    */
>   #define CONFIG_ENV_IS_IN_FLASH	1
> diff --git a/include/configs/mpc5121ads.h b/include/configs/mpc5121ads.h
> index 1714a9bec8..433b854246 100644
> --- a/include/configs/mpc5121ads.h
> +++ b/include/configs/mpc5121ads.h
> @@ -328,29 +328,12 @@
>
>   #endif
>
> -/* I2C */
> -#define CONFIG_HARD_I2C			/* I2C with hardware support */
> -#define CONFIG_I2C_MULTI_BUS
> -#define CONFIG_SYS_I2C_SPEED		100000	/* I2C speed and slave address */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -#if 0
> -#define CONFIG_SYS_I2C_NOPROBES	{{0,0x69}}	/* Don't probe these addrs */
> -#endif
> -
>   /*
>    * IIM - IC Identification Module
>    */
>   #undef CONFIG_FSL_IIM
>
>   /*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		2	/* 16-bit EEPROM address */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x50	/* Atmel: AT24C32A-10TQ-2.7 */
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	10	/* 10ms of delay */
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	5	/* 32-Byte Page Write Mode */
> -
> -/*
>    * Ethernet configuration
>    */
>   #define CONFIG_MPC512x_FEC	1
> @@ -397,8 +380,6 @@
>   #define CONFIG_LOADS_ECHO	1	/* echo on for serial download */
>   #define CONFIG_SYS_LOADS_BAUD_CHANGE	1	/* allow baudrate change */
>
> -#define CONFIG_CMD_DATE
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_IDE
>   #define CONFIG_CMD_JFFS2
>   #define CONFIG_CMD_REGINFO
> diff --git a/include/configs/mxs.h b/include/configs/mxs.h
> index fdf596f82f..c403dda483 100644
> --- a/include/configs/mxs.h
> +++ b/include/configs/mxs.h
> @@ -126,16 +126,6 @@
>   #endif
>   #endif
>
> -/* I2C */
> -#ifdef CONFIG_CMD_I2C
> -#define CONFIG_SYS_I2C
> -#define CONFIG_SYS_I2C_MXS
> -#define CONFIG_HARD_I2C
> -#ifndef CONFIG_SYS_I2C_SPEED
> -#define CONFIG_SYS_I2C_SPEED		400000
> -#endif
> -#endif
> -
>   /* LCD */
>   #ifdef CONFIG_VIDEO
>   #define CONFIG_VIDEO_MXS
> diff --git a/include/configs/o2dnt-common.h b/include/configs/o2dnt-common.h
> index 1470c513a3..dc4dea6084 100644
> --- a/include/configs/o2dnt-common.h
> +++ b/include/configs/o2dnt-common.h
> @@ -68,7 +68,6 @@
>   /*
>    * Supported commands
>    */
> -#define CONFIG_CMD_EEPROM
>   #ifdef CONFIG_PCI
>   #define CONFIG_CMD_PCI
>   #endif
> @@ -176,27 +175,6 @@
>   #endif
>
>   /*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C			1	/* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE		1	/* Select I2C module #1 or #2 */
> -#define CONFIG_SYS_I2C_SPEED		100000	/* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
> -/*
> - * EEPROM configuration:
> - *
> - * O2DNT board is equiped with Ramtron FRAM device FM24CL16
> - * 16 Kib Ferroelectric Nonvolatile serial RAM memory
> - * organized as 2048 x 8 bits and addressable as eight I2C devices
> - * 0x50 ... 0x57 each 256 bytes in size
> - *
> - */
> -#define CONFIG_SYS_I2C_FRAM
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x50	/* 1010000x */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		1
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	3
> -/*
>    * There is no write delay with FRAM, write operations are performed at bus
>    * speed. Thus, no status polling or write delay is needed.
>    */
> diff --git a/include/configs/pcm030.h b/include/configs/pcm030.h
> index 87aa9dc988..406f3e547a 100644
> --- a/include/configs/pcm030.h
> +++ b/include/configs/pcm030.h
> @@ -49,8 +49,6 @@ Serial console configuration
>   /*
>    * Command line configuration.
>    */
> -#define CONFIG_CMD_DATE
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_JFFS2
>   #define CONFIG_CMD_PCI
>
> @@ -122,31 +120,6 @@ IPB Bus clocking configuration.
>   #define CONFIG_SYS_XLB_PIPELINING	1
>
>   /*---------------------------------------------------------------------------
> - I2C configuration
> ----------------------------------------------------------------------------*/
> -#define CONFIG_HARD_I2C 1 /* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE 2 /* Select I2C module #1 or #2 */
> -#define CONFIG_SYS_I2C_SPEED 100000 /* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE 0x7F
> -
> -/*---------------------------------------------------------------------------
> - EEPROM CAT24WC32 configuration
> ----------------------------------------------------------------------------*/
> -#define CONFIG_SYS_I2C_EEPROM_ADDR	0x52	/* 1010100x */
> -#define CONFIG_SYS_I2C_FACT_ADDR	0x52	/* EEPROM CAT24WC32 */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2	/* Bytes of address */
> -#define CONFIG_SYS_EEPROM_SIZE		2048
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 15
> -
> -/*---------------------------------------------------------------------------
> -RTC configuration
> ----------------------------------------------------------------------------*/
> -#define RTC
> -#define CONFIG_RTC_PCF8563		1
> -#define CONFIG_SYS_I2C_RTC_ADDR		0x51
> -
> -/*---------------------------------------------------------------------------
>    Flash configuration
>   ---------------------------------------------------------------------------*/
>
> @@ -173,11 +146,10 @@ RTC configuration
>    Environment settings
>   ---------------------------------------------------------------------------*/
>
> -/* pcm030 ships with environment is EEPROM by default */
> -#define CONFIG_ENV_IS_IN_EEPROM	1
> +#define CONFIG_ENV_IS_NOWHERE
>   #define CONFIG_ENV_OFFSET	0x00	/* environment starts at the */
>   					/*beginning of the EEPROM */
> -#define CONFIG_ENV_SIZE		CONFIG_SYS_EEPROM_SIZE
> +#define CONFIG_ENV_SIZE		2048
>
>   #define CONFIG_ENV_OVERWRITE	1
>
> diff --git a/include/configs/pdm360ng.h b/include/configs/pdm360ng.h
> index eca984a9ef..b82b4bffd8 100644
> --- a/include/configs/pdm360ng.h
> +++ b/include/configs/pdm360ng.h
> @@ -302,34 +302,11 @@
>   #define CONFIG_SYS_PDM360NG_COPROC_BAUDRATE	38400
>
>   /*
> - * I2C
> - */
> -#define CONFIG_HARD_I2C			/* I2C with hardware support */
> -#define CONFIG_I2C_MULTI_BUS
> -#define CONFIG_I2C_CMD_TREE
> -/* I2C speed and slave address */
> -#define CONFIG_SYS_I2C_SPEED		100000
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
> -/*
>    * IIM - IC Identification Module
>    */
>   #undef CONFIG_FSL_IIM
>
>   /*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		2	/* 16-bit EEPROM addr */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x50	/* ST AT24C01 */
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	10	/* 10ms of delay */
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	4	/* 16-Byte Write Mode */
> -
> -/*
> - * MAC addr in EEPROM
> - */
> -#define CONFIG_SYS_I2C_EEPROM_BUS_NUM		0
> -#define CONFIG_SYS_I2C_EEPROM_MAC_OFFSET	0x10
> -/*
>    * Enabled only to delete "ethaddr" before testing
>    * "ethaddr" setting from EEPROM
>    */
> @@ -345,12 +322,6 @@
>   #define CONFIG_HAS_ETH0
>
>   /*
> - * Configure on-board RTC
> - */
> -#define CONFIG_RTC_M41T62			/* use M41T00 rtc via i2c */
> -#define CONFIG_SYS_I2C_RTC_ADDR		0x68	/* at address 0x68	*/
> -
> -/*
>    * Environment
>    */
>   #define CONFIG_ENV_IS_IN_FLASH	1
> @@ -367,8 +338,6 @@
>   #define CONFIG_LOADS_ECHO	1	/* echo on for serial download */
>   #define CONFIG_SYS_LOADS_BAUD_CHANGE	1	/* allow baudrate change */
>
> -#define CONFIG_CMD_DATE
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_REGINFO
>
>   #undef CONFIG_CMD_FUSE
> diff --git a/include/configs/r0p7734.h b/include/configs/r0p7734.h
> index 642572fc95..b159b1ed8d 100644
> --- a/include/configs/r0p7734.h
> +++ b/include/configs/r0p7734.h
> @@ -40,20 +40,6 @@
>   # define CONFIG_SMC911X_BASE (0x84000000)
>   #endif
>
> -/* I2C */
> -#define CONFIG_SH_SH7734_I2C	1
> -#define CONFIG_HARD_I2C			1
> -#define CONFIG_I2C_MULTI_BUS	1
> -#define CONFIG_SYS_MAX_I2C_BUS	2
> -#define CONFIG_SYS_I2C_MODULE	0
> -#define CONFIG_SYS_I2C_SPEED	100000 /* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE	0x50
> -#define CONFIG_SH_I2C_DATA_HIGH	4
> -#define CONFIG_SH_I2C_DATA_LOW	5
> -#define CONFIG_SH_I2C_CLOCK		500000000
> -#define CONFIG_SH_I2C_BASE0		0xFFC70000
> -#define CONFIG_SH_I2C_BASE1		0xFFC7100
> -
>   /* undef to save memory	*/
>   #define CONFIG_SYS_LONGHELP
>   /* Monitor Command Prompt */
> diff --git a/include/configs/s32v234evb.h b/include/configs/s32v234evb.h
> index 398b3aa343..33487cd86f 100644
> --- a/include/configs/s32v234evb.h
> +++ b/include/configs/s32v234evb.h
> @@ -97,16 +97,6 @@
>   #define CONFIG_PHY_MICREL
>   #endif
>
> -#if 0				/* Disable until the I2C driver will be updated */
> -
> -/* I2C Configs */
> -#define CONFIG_CMD_I2C
> -#define CONFIG_HARD_I2C
> -#define CONFIG_I2C_MXC
> -#define CONFIG_SYS_I2C_BASE		I2C0_BASE_ADDR
> -#define CONFIG_SYS_I2C_SPEED		100000
> -#endif
> -
>   #if 0				/* Disable until the FLASH will be implemented */
>   #define CONFIG_SYS_USE_NAND
>   #endif
> diff --git a/include/configs/v38b.h b/include/configs/v38b.h
> index dc7186c3cc..bdae969dd8 100644
> --- a/include/configs/v38b.h
> +++ b/include/configs/v38b.h
> @@ -78,7 +78,6 @@
>   #define CONFIG_CMD_IRQ
>   #define CONFIG_CMD_JFFS2
>   #define CONFIG_CMD_SDRAM
> -#define CONFIG_CMD_DATE
>
>   #define CONFIG_TIMESTAMP		/* Print image info with timestamp */
>
> @@ -137,27 +136,6 @@
>   #undef CONFIG_SYS_IPBCLK_EQUALS_XLBCLK			/* define for 133MHz speed */
>
>   /*
> - * I2C configuration
> - */
> -#define CONFIG_HARD_I2C		1	/* I2C with hardware support */
> -#define CONFIG_SYS_I2C_MODULE		2	/* Select I2C module #1 or #2 */
> -#define CONFIG_SYS_I2C_SPEED		100000	/* 100 kHz */
> -#define CONFIG_SYS_I2C_SLAVE		0x7F
> -
> -/*
> - * EEPROM configuration
> - */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR		0x50	/* 1010000x */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		1
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	3
> -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	70
> -
> -/*
> - * RTC configuration
> - */
> -#define CONFIG_SYS_I2C_RTC_ADDR		0x51
> -
> -/*
>    * Flash configuration - use CFI driver
>    */
>   #define CONFIG_SYS_FLASH_CFI		1		/* Flash is CFI conformant */
>

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany


More information about the U-Boot mailing list