diff mbox

[U-Boot,07/11] i2c: Drop use of CONFIG_I2C_HARD

Message ID 20170423153525.14882-8-sjg@chromium.org
State Changes Requested
Delegated to: Tom Rini
Headers show

Commit Message

Simon Glass April 23, 2017, 3:35 p.m. UTC
Drop use of this long-deprecated option.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README                       | 16 ++++++++--------
 board/ti/am335x/board.c      |  6 +-----
 board/ti/am43xx/board.c      |  3 +--
 cmd/eeprom.c                 |  2 --
 common/board_f.c             |  4 ++--
 common/stdio.c               |  5 +----
 include/configs/PATI.h       |  7 +++----
 include/configs/am335x_evm.h |  5 -----
 include/configs/am43xx_evm.h |  6 ------
 scripts/config_whitelist.txt |  1 -
 10 files changed, 16 insertions(+), 39 deletions(-)

Comments

Lokesh Vutla April 25, 2017, 3:03 a.m. UTC | #1
Hi Simon,

On Sunday 23 April 2017 09:05 PM, Simon Glass wrote:
> Drop use of this long-deprecated option.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
>  README                       | 16 ++++++++--------
>  board/ti/am335x/board.c      |  6 +-----
>  board/ti/am43xx/board.c      |  3 +--

[..snip..]

> diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
> index 3e842d3187..0d2e84011d 100644
> --- a/board/ti/am335x/board.c
> +++ b/board/ti/am335x/board.c
> @@ -67,11 +67,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
>  #ifdef CONFIG_TI_I2C_BOARD_DETECT
>  void do_board_detect(void)
>  {
> -	enable_i2c0_pin_mux();
> -	i2c_init(CONFIG_SYS_OMAP24_I2C_SPEED, CONFIG_SYS_OMAP24_I2C_SLAVE);
> -
> -	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))

This is very early board detection code that happens in SPL. There were
common Kconfig options added for eeprom
address(CONFIG_EEPROM_BUS_ADDRESS, CONFIG_EEPROM_CHIP_ADDRESS) but
missed updating in these boards.

Instead of removing can this be updated to

-	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
+	if (ti_i2c_eeprom_am_get(CONFIG_EEPROM_BUS_ADDRESS,
+	    CONFIG_EEPROM_CHIP_ADDRESS))
 		printf("ti_i2c_eeprom_init failed\n");
 }
 #endif


> -		printf("ti_i2c_eeprom_init failed\n");
> +	printf("ti_i2c_eeprom_init failed\n");
>  }
>  #endif
>  
> diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
> index 390cc168cd..a190893450 100644
> --- a/board/ti/am43xx/board.c
> +++ b/board/ti/am43xx/board.c
> @@ -42,8 +42,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
>  #ifdef CONFIG_TI_I2C_BOARD_DETECT
>  void do_board_detect(void)
>  {
> -	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
> -		printf("ti_i2c_eeprom_init failed\n");
> +	printf("ti_i2c_eeprom_init failed\n");
>  }
>  #endif

Same as above.

Thanks and regards,
Lokesh
Heiko Schocher April 25, 2017, 7:56 a.m. UTC | #2
Hello Lokesh,

Am 25.04.2017 um 05:03 schrieb Lokesh Vutla:
> Hi Simon,
>
> On Sunday 23 April 2017 09:05 PM, Simon Glass wrote:
>> Drop use of this long-deprecated option.
>>
>> Signed-off-by: Simon Glass <sjg@chromium.org>
>> ---
>>
>>   README                       | 16 ++++++++--------
>>   board/ti/am335x/board.c      |  6 +-----
>>   board/ti/am43xx/board.c      |  3 +--
>
> [..snip..]
>
>> diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
>> index 3e842d3187..0d2e84011d 100644
>> --- a/board/ti/am335x/board.c
>> +++ b/board/ti/am335x/board.c
>> @@ -67,11 +67,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
>>   #ifdef CONFIG_TI_I2C_BOARD_DETECT
>>   void do_board_detect(void)
>>   {
>> -	enable_i2c0_pin_mux();
>> -	i2c_init(CONFIG_SYS_OMAP24_I2C_SPEED, CONFIG_SYS_OMAP24_I2C_SLAVE);
>> -
>> -	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
>
> This is very early board detection code that happens in SPL. There were
> common Kconfig options added for eeprom
> address(CONFIG_EEPROM_BUS_ADDRESS, CONFIG_EEPROM_CHIP_ADDRESS) but
> missed updating in these boards.
>
> Instead of removing can this be updated to
>
> -	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
> +	if (ti_i2c_eeprom_am_get(CONFIG_EEPROM_BUS_ADDRESS,
> +	    CONFIG_EEPROM_CHIP_ADDRESS))
>   		printf("ti_i2c_eeprom_init failed\n");
>   }
>   #endif

Good catch. Do you have time for testing Simons patchseries
on a real hw?

Thanks!

bye,
Heiko
>
>
>> -		printf("ti_i2c_eeprom_init failed\n");
>> +	printf("ti_i2c_eeprom_init failed\n");
>>   }
>>   #endif
>>
>> diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
>> index 390cc168cd..a190893450 100644
>> --- a/board/ti/am43xx/board.c
>> +++ b/board/ti/am43xx/board.c
>> @@ -42,8 +42,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
>>   #ifdef CONFIG_TI_I2C_BOARD_DETECT
>>   void do_board_detect(void)
>>   {
>> -	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
>> -		printf("ti_i2c_eeprom_init failed\n");
>> +	printf("ti_i2c_eeprom_init failed\n");
>>   }
>>   #endif
>
> Same as above.
>
> Thanks and regards,
> Lokesh
>
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> https://lists.denx.de/listinfo/u-boot
>
Lokesh Vutla April 25, 2017, 8:15 a.m. UTC | #3
On Tuesday 25 April 2017 01:26 PM, Heiko Schocher wrote:
> Hello Lokesh,
> 
> Am 25.04.2017 um 05:03 schrieb Lokesh Vutla:
>> Hi Simon,
>>
>> On Sunday 23 April 2017 09:05 PM, Simon Glass wrote:
>>> Drop use of this long-deprecated option.
>>>
>>> Signed-off-by: Simon Glass <sjg@chromium.org>
>>> ---
>>>
>>>   README                       | 16 ++++++++--------
>>>   board/ti/am335x/board.c      |  6 +-----
>>>   board/ti/am43xx/board.c      |  3 +--
>>
>> [..snip..]
>>
>>> diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
>>> index 3e842d3187..0d2e84011d 100644
>>> --- a/board/ti/am335x/board.c
>>> +++ b/board/ti/am335x/board.c
>>> @@ -67,11 +67,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev
>>> *)CTRL_DEVICE_BASE;
>>>   #ifdef CONFIG_TI_I2C_BOARD_DETECT
>>>   void do_board_detect(void)
>>>   {
>>> -    enable_i2c0_pin_mux();
>>> -    i2c_init(CONFIG_SYS_OMAP24_I2C_SPEED, CONFIG_SYS_OMAP24_I2C_SLAVE);
>>> -
>>> -    if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
>>
>> This is very early board detection code that happens in SPL. There were
>> common Kconfig options added for eeprom
>> address(CONFIG_EEPROM_BUS_ADDRESS, CONFIG_EEPROM_CHIP_ADDRESS) but
>> missed updating in these boards.
>>
>> Instead of removing can this be updated to
>>
>> -    if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
>> +    if (ti_i2c_eeprom_am_get(CONFIG_EEPROM_BUS_ADDRESS,
>> +        CONFIG_EEPROM_CHIP_ADDRESS))
>>           printf("ti_i2c_eeprom_init failed\n");
>>   }
>>   #endif
> 
> Good catch. Do you have time for testing Simons patchseries
> on a real hw?

Yeah, this series breaks booting of BeagleBone Black. The above
mentioned diff
fixes it.

Thanks and regards,
Lokesh
Heiko Schocher April 28, 2017, 4:54 a.m. UTC | #4
Hello Simon,

Am 23.04.2017 um 17:35 schrieb Simon Glass:
> Drop use of this long-deprecated option.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>   README                       | 16 ++++++++--------
>   board/ti/am335x/board.c      |  6 +-----
>   board/ti/am43xx/board.c      |  3 +--
>   cmd/eeprom.c                 |  2 --
>   common/board_f.c             |  4 ++--
>   common/stdio.c               |  5 +----
>   include/configs/PATI.h       |  7 +++----
>   include/configs/am335x_evm.h |  5 -----
>   include/configs/am43xx_evm.h |  6 ------
>   scripts/config_whitelist.txt |  1 -
>   10 files changed, 16 insertions(+), 39 deletions(-)

Hmm.. missing this patch in patchwork ... nevertheless:

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

Applied to u-boot-i2c/next

bye,
Heiko
>
> diff --git a/README b/README
> index f31bb3dffe..0bee478ec7 100644
> --- a/README
> +++ b/README
> @@ -2214,7 +2214,9 @@ The following options need to be configured:
>
>   		If you do not have i2c muxes on your board, omit this define.
>
> -- Legacy I2C Support:	CONFIG_HARD_I2C
> +----under removal:
> +
> +- Legacy I2C Support:	CONFIG_SOFT_I2C
>
>   		NOTE: It is intended to move drivers to CONFIG_SYS_I2C which
>   		provides the following compelling advantages:
> @@ -2223,14 +2225,12 @@ The following options need to be configured:
>   		- approved multibus support
>   		- better i2c mux support
>
> -		** CONFIG_HARD_I2C is now being removed **
> -
> -----under removal:
> +		** CONFIG_SOFT_I2C is now being removed **
>
> -		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
> -		to run and CONFIG_SYS_I2C_SLAVE to be the address of this node (ie
> -		the CPU's i2c node address).
> +		With CONFIG_SOFT_I2C you will need to define
> +		CONFIG_SYS_I2C_SPEED to be the frequency (in Hz) at which you
> +		wish your i2c bus to run and CONFIG_SYS_I2C_SLAVE to be the
> +		address of this node (ie the CPU's i2c node address).
>
>   		Now, the u-boot i2c code for the mpc8xx
>   		(arch/powerpc/cpu/mpc8xx/i2c.c) sets the CPU up as a master node
> diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
> index 3e842d3187..0d2e84011d 100644
> --- a/board/ti/am335x/board.c
> +++ b/board/ti/am335x/board.c
> @@ -67,11 +67,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
>   #ifdef CONFIG_TI_I2C_BOARD_DETECT
>   void do_board_detect(void)
>   {
> -	enable_i2c0_pin_mux();
> -	i2c_init(CONFIG_SYS_OMAP24_I2C_SPEED, CONFIG_SYS_OMAP24_I2C_SLAVE);
> -
> -	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
> -		printf("ti_i2c_eeprom_init failed\n");
> +	printf("ti_i2c_eeprom_init failed\n");
>   }
>   #endif
>
> diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
> index 390cc168cd..a190893450 100644
> --- a/board/ti/am43xx/board.c
> +++ b/board/ti/am43xx/board.c
> @@ -42,8 +42,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
>   #ifdef CONFIG_TI_I2C_BOARD_DETECT
>   void do_board_detect(void)
>   {
> -	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
> -		printf("ti_i2c_eeprom_init failed\n");
> +	printf("ti_i2c_eeprom_init failed\n");
>   }
>   #endif
>
> diff --git a/cmd/eeprom.c b/cmd/eeprom.c
> index 0a0e4a2c1c..c9fde0d682 100644
> --- a/cmd/eeprom.c
> +++ b/cmd/eeprom.c
> @@ -73,13 +73,11 @@ void eeprom_init(int bus)
>   #endif
>
>   	/* I2C EEPROM */
> -#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
>   #if defined(CONFIG_SYS_I2C)
>   	if (bus >= 0)
>   		i2c_set_bus_num(bus);
>   #endif
>   	i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
> -#endif
>   }
>
>   static int eeprom_addr(unsigned dev_addr, unsigned offset, uchar *addr)
> diff --git a/common/board_f.c b/common/board_f.c
> index d9431ee79a..eed3e7be2a 100644
> --- a/common/board_f.c
> +++ b/common/board_f.c
> @@ -184,7 +184,7 @@ __weak int dram_init_banksize(void)
>   	return 0;
>   }
>
> -#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
> +#if defined(CONFIG_SYS_I2C)
>   static int init_func_i2c(void)
>   {
>   	puts("I2C:   ");
> @@ -765,7 +765,7 @@ static const init_fnc_t init_sequence_f[] = {
>   	misc_init_f,
>   #endif
>   	INIT_FUNC_WATCHDOG_RESET
> -#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
> +#if defined(CONFIG_SYS_I2C)
>   	init_func_i2c,
>   #endif
>   #if defined(CONFIG_HARD_SPI)
> diff --git a/common/stdio.c b/common/stdio.c
> index 4d30017530..ee4f0bda9e 100644
> --- a/common/stdio.c
> +++ b/common/stdio.c
> @@ -21,7 +21,7 @@
>   #include <logbuff.h>
>   #endif
>
> -#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
> +#if defined(CONFIG_SYS_I2C)
>   #include <i2c.h>
>   #endif
>
> @@ -346,9 +346,6 @@ int stdio_add_devices(void)
>   #ifdef CONFIG_SYS_I2C
>   	i2c_init_all();
>   #else
> -#if defined(CONFIG_HARD_I2C)
> -	i2c_init (CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
> -#endif
>   #endif
>   #ifdef CONFIG_DM_VIDEO
>   	/*
> diff --git a/include/configs/PATI.h b/include/configs/PATI.h
> index 2c048abba6..045aa0a720 100644
> --- a/include/configs/PATI.h
> +++ b/include/configs/PATI.h
> @@ -39,7 +39,6 @@
>   #define CONFIG_CMD_REGINFO
>   #define CONFIG_CMD_REGINFO
>   #define CONFIG_CMD_BSP
> -#define CONFIG_CMD_EEPROM
>   #define CONFIG_CMD_IRQ
>
>   #define CONFIG_BOOTCOMMAND	""	/* autoboot command			*/
> @@ -136,16 +135,16 @@
>   #define CONFIG_SYS_MAX_FLASH_BANKS	1
>   #define CONFIG_SYS_MAX_FLASH_SECT	128
>
> -#define	CONFIG_ENV_IS_IN_EEPROM
>   #ifdef	CONFIG_ENV_IS_IN_EEPROM
>   #define CONFIG_ENV_OFFSET		0
>   #define CONFIG_ENV_SIZE		2048
>   #endif
>
> -#undef  CONFIG_ENV_IS_IN_FLASH
> +#define CONFIG_ENV_IS_IN_FLASH
>   #ifdef	CONFIG_ENV_IS_IN_FLASH
>   #define	CONFIG_ENV_SIZE		0x00002000		/* Set whole sector as env		*/
> -#define CONFIG_ENV_OFFSET		((0 - CONFIG_SYS_FLASH_BASE) - CONFIG_ENV_SIZE)		/* Environment starts at this adress	*/
> +/* Environment starts at this adress	*/
> +#define CONFIG_ENV_OFFSET	((0 - CONFIG_SYS_FLASH_BASE) - 2048)
>   #endif
>
>   #define CONFIG_SPI		1
> diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
> index fc8a08f5b7..5c1a6d64da 100644
> --- a/include/configs/am335x_evm.h
> +++ b/include/configs/am335x_evm.h
> @@ -176,11 +176,6 @@
>   #define CONFIG_SYS_NS16550_COM5		0x481a8000	/* UART4 */
>   #define CONFIG_SYS_NS16550_COM6		0x481aa000	/* UART5 */
>
> -#define CONFIG_CMD_EEPROM
> -#define CONFIG_ENV_EEPROM_IS_ON_I2C
> -#define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* Main EEPROM */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2
> -
>   /* PMIC support */
>   #define CONFIG_POWER_TPS65217
>   #define CONFIG_POWER_TPS65910
> diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
> index 1feb946834..ba185ebf5a 100644
> --- a/include/configs/am43xx_evm.h
> +++ b/include/configs/am43xx_evm.h
> @@ -22,12 +22,6 @@
>   #define CONFIG_SYS_NS16550_SERIAL
>   #endif
>
> -/* I2C Configuration */
> -#define CONFIG_CMD_EEPROM
> -#define CONFIG_ENV_EEPROM_IS_ON_I2C
> -#define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* Main EEPROM */
> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2
> -
>   /* Power */
>   #define CONFIG_POWER
>   #define CONFIG_POWER_I2C
> diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
> index 5e515d215c..d18497c448 100644
> --- a/scripts/config_whitelist.txt
> +++ b/scripts/config_whitelist.txt
> @@ -1196,7 +1196,6 @@ CONFIG_G_DNL_UMS_VENDOR_NUM
>   CONFIG_H264_FREQ
>   CONFIG_H8300
>   CONFIG_HALEAKALA
> -CONFIG_HARD_I2C
>   CONFIG_HARD_SPI
>   CONFIG_HASH_VERIFY
>   CONFIG_HAS_DATAFLASH
>
Lokesh Vutla April 28, 2017, 4:56 a.m. UTC | #5
Hi Heiko,

On Friday 28 April 2017 10:24 AM, Heiko Schocher wrote:
> Hello Simon,
> 
> Am 23.04.2017 um 17:35 schrieb Simon Glass:
>> Drop use of this long-deprecated option.
>>
>> Signed-off-by: Simon Glass <sjg@chromium.org>
>> ---
>>
>>   README                       | 16 ++++++++--------
>>   board/ti/am335x/board.c      |  6 +-----
>>   board/ti/am43xx/board.c      |  3 +--
>>   cmd/eeprom.c                 |  2 --
>>   common/board_f.c             |  4 ++--
>>   common/stdio.c               |  5 +----
>>   include/configs/PATI.h       |  7 +++----
>>   include/configs/am335x_evm.h |  5 -----
>>   include/configs/am43xx_evm.h |  6 ------
>>   scripts/config_whitelist.txt |  1 -
>>   10 files changed, 16 insertions(+), 39 deletions(-)
> 
> Hmm.. missing this patch in patchwork ... nevertheless:
> 
> Reviewed-by: Heiko Schocher <hs@denx.de>
> 
> Applied to u-boot-i2c/next

As pointed out in the other thread to the same patch[1] it breaks am335x
and am43xx boards :(

[1] https://www.mail-archive.com/u-boot@lists.denx.de/msg246595.html

Thanks and regards,
Lokesh

> 
> bye,
> Heiko
>>
>> diff --git a/README b/README
>> index f31bb3dffe..0bee478ec7 100644
>> --- a/README
>> +++ b/README
>> @@ -2214,7 +2214,9 @@ The following options need to be configured:
>>
>>           If you do not have i2c muxes on your board, omit this define.
>>
>> -- Legacy I2C Support:    CONFIG_HARD_I2C
>> +----under removal:
>> +
>> +- Legacy I2C Support:    CONFIG_SOFT_I2C
>>
>>           NOTE: It is intended to move drivers to CONFIG_SYS_I2C which
>>           provides the following compelling advantages:
>> @@ -2223,14 +2225,12 @@ The following options need to be configured:
>>           - approved multibus support
>>           - better i2c mux support
>>
>> -        ** CONFIG_HARD_I2C is now being removed **
>> -
>> -----under removal:
>> +        ** CONFIG_SOFT_I2C is now being removed **
>>
>> -        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
>> -        to run and CONFIG_SYS_I2C_SLAVE to be the address of this
>> node (ie
>> -        the CPU's i2c node address).
>> +        With CONFIG_SOFT_I2C you will need to define
>> +        CONFIG_SYS_I2C_SPEED to be the frequency (in Hz) at which you
>> +        wish your i2c bus to run and CONFIG_SYS_I2C_SLAVE to be the
>> +        address of this node (ie the CPU's i2c node address).
>>
>>           Now, the u-boot i2c code for the mpc8xx
>>           (arch/powerpc/cpu/mpc8xx/i2c.c) sets the CPU up as a master
>> node
>> diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
>> index 3e842d3187..0d2e84011d 100644
>> --- a/board/ti/am335x/board.c
>> +++ b/board/ti/am335x/board.c
>> @@ -67,11 +67,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev
>> *)CTRL_DEVICE_BASE;
>>   #ifdef CONFIG_TI_I2C_BOARD_DETECT
>>   void do_board_detect(void)
>>   {
>> -    enable_i2c0_pin_mux();
>> -    i2c_init(CONFIG_SYS_OMAP24_I2C_SPEED, CONFIG_SYS_OMAP24_I2C_SLAVE);
>> -
>> -    if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
>> -        printf("ti_i2c_eeprom_init failed\n");
>> +    printf("ti_i2c_eeprom_init failed\n");
>>   }
>>   #endif
>>
>> diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
>> index 390cc168cd..a190893450 100644
>> --- a/board/ti/am43xx/board.c
>> +++ b/board/ti/am43xx/board.c
>> @@ -42,8 +42,7 @@ static struct ctrl_dev *cdev = (struct ctrl_dev
>> *)CTRL_DEVICE_BASE;
>>   #ifdef CONFIG_TI_I2C_BOARD_DETECT
>>   void do_board_detect(void)
>>   {
>> -    if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
>> -        printf("ti_i2c_eeprom_init failed\n");
>> +    printf("ti_i2c_eeprom_init failed\n");
>>   }
>>   #endif
>>
>> diff --git a/cmd/eeprom.c b/cmd/eeprom.c
>> index 0a0e4a2c1c..c9fde0d682 100644
>> --- a/cmd/eeprom.c
>> +++ b/cmd/eeprom.c
>> @@ -73,13 +73,11 @@ void eeprom_init(int bus)
>>   #endif
>>
>>       /* I2C EEPROM */
>> -#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
>>   #if defined(CONFIG_SYS_I2C)
>>       if (bus >= 0)
>>           i2c_set_bus_num(bus);
>>   #endif
>>       i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
>> -#endif
>>   }
>>
>>   static int eeprom_addr(unsigned dev_addr, unsigned offset, uchar *addr)
>> diff --git a/common/board_f.c b/common/board_f.c
>> index d9431ee79a..eed3e7be2a 100644
>> --- a/common/board_f.c
>> +++ b/common/board_f.c
>> @@ -184,7 +184,7 @@ __weak int dram_init_banksize(void)
>>       return 0;
>>   }
>>
>> -#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
>> +#if defined(CONFIG_SYS_I2C)
>>   static int init_func_i2c(void)
>>   {
>>       puts("I2C:   ");
>> @@ -765,7 +765,7 @@ static const init_fnc_t init_sequence_f[] = {
>>       misc_init_f,
>>   #endif
>>       INIT_FUNC_WATCHDOG_RESET
>> -#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
>> +#if defined(CONFIG_SYS_I2C)
>>       init_func_i2c,
>>   #endif
>>   #if defined(CONFIG_HARD_SPI)
>> diff --git a/common/stdio.c b/common/stdio.c
>> index 4d30017530..ee4f0bda9e 100644
>> --- a/common/stdio.c
>> +++ b/common/stdio.c
>> @@ -21,7 +21,7 @@
>>   #include <logbuff.h>
>>   #endif
>>
>> -#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
>> +#if defined(CONFIG_SYS_I2C)
>>   #include <i2c.h>
>>   #endif
>>
>> @@ -346,9 +346,6 @@ int stdio_add_devices(void)
>>   #ifdef CONFIG_SYS_I2C
>>       i2c_init_all();
>>   #else
>> -#if defined(CONFIG_HARD_I2C)
>> -    i2c_init (CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
>> -#endif
>>   #endif
>>   #ifdef CONFIG_DM_VIDEO
>>       /*
>> diff --git a/include/configs/PATI.h b/include/configs/PATI.h
>> index 2c048abba6..045aa0a720 100644
>> --- a/include/configs/PATI.h
>> +++ b/include/configs/PATI.h
>> @@ -39,7 +39,6 @@
>>   #define CONFIG_CMD_REGINFO
>>   #define CONFIG_CMD_REGINFO
>>   #define CONFIG_CMD_BSP
>> -#define CONFIG_CMD_EEPROM
>>   #define CONFIG_CMD_IRQ
>>
>>   #define CONFIG_BOOTCOMMAND    ""    /* autoboot command            */
>> @@ -136,16 +135,16 @@
>>   #define CONFIG_SYS_MAX_FLASH_BANKS    1
>>   #define CONFIG_SYS_MAX_FLASH_SECT    128
>>
>> -#define    CONFIG_ENV_IS_IN_EEPROM
>>   #ifdef    CONFIG_ENV_IS_IN_EEPROM
>>   #define CONFIG_ENV_OFFSET        0
>>   #define CONFIG_ENV_SIZE        2048
>>   #endif
>>
>> -#undef  CONFIG_ENV_IS_IN_FLASH
>> +#define CONFIG_ENV_IS_IN_FLASH
>>   #ifdef    CONFIG_ENV_IS_IN_FLASH
>>   #define    CONFIG_ENV_SIZE        0x00002000        /* Set whole
>> sector as env        */
>> -#define CONFIG_ENV_OFFSET        ((0 - CONFIG_SYS_FLASH_BASE) -
>> CONFIG_ENV_SIZE)        /* Environment starts at this adress    */
>> +/* Environment starts at this adress    */
>> +#define CONFIG_ENV_OFFSET    ((0 - CONFIG_SYS_FLASH_BASE) - 2048)
>>   #endif
>>
>>   #define CONFIG_SPI        1
>> diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
>> index fc8a08f5b7..5c1a6d64da 100644
>> --- a/include/configs/am335x_evm.h
>> +++ b/include/configs/am335x_evm.h
>> @@ -176,11 +176,6 @@
>>   #define CONFIG_SYS_NS16550_COM5        0x481a8000    /* UART4 */
>>   #define CONFIG_SYS_NS16550_COM6        0x481aa000    /* UART5 */
>>
>> -#define CONFIG_CMD_EEPROM
>> -#define CONFIG_ENV_EEPROM_IS_ON_I2C
>> -#define CONFIG_SYS_I2C_EEPROM_ADDR    0x50    /* Main EEPROM */
>> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN    2
>> -
>>   /* PMIC support */
>>   #define CONFIG_POWER_TPS65217
>>   #define CONFIG_POWER_TPS65910
>> diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
>> index 1feb946834..ba185ebf5a 100644
>> --- a/include/configs/am43xx_evm.h
>> +++ b/include/configs/am43xx_evm.h
>> @@ -22,12 +22,6 @@
>>   #define CONFIG_SYS_NS16550_SERIAL
>>   #endif
>>
>> -/* I2C Configuration */
>> -#define CONFIG_CMD_EEPROM
>> -#define CONFIG_ENV_EEPROM_IS_ON_I2C
>> -#define CONFIG_SYS_I2C_EEPROM_ADDR    0x50    /* Main EEPROM */
>> -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN    2
>> -
>>   /* Power */
>>   #define CONFIG_POWER
>>   #define CONFIG_POWER_I2C
>> diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
>> index 5e515d215c..d18497c448 100644
>> --- a/scripts/config_whitelist.txt
>> +++ b/scripts/config_whitelist.txt
>> @@ -1196,7 +1196,6 @@ CONFIG_G_DNL_UMS_VENDOR_NUM
>>   CONFIG_H264_FREQ
>>   CONFIG_H8300
>>   CONFIG_HALEAKALA
>> -CONFIG_HARD_I2C
>>   CONFIG_HARD_SPI
>>   CONFIG_HASH_VERIFY
>>   CONFIG_HAS_DATAFLASH
>>
>
Tom Rini April 28, 2017, 11:33 a.m. UTC | #6
On Fri, Apr 28, 2017 at 10:26:46AM +0530, Lokesh Vutla wrote:
> Hi Heiko,
> 
> On Friday 28 April 2017 10:24 AM, Heiko Schocher wrote:
> > Hello Simon,
> > 
> > Am 23.04.2017 um 17:35 schrieb Simon Glass:
> >> Drop use of this long-deprecated option.
> >>
> >> Signed-off-by: Simon Glass <sjg@chromium.org>
> >> ---
> >>
> >>   README                       | 16 ++++++++--------
> >>   board/ti/am335x/board.c      |  6 +-----
> >>   board/ti/am43xx/board.c      |  3 +--
> >>   cmd/eeprom.c                 |  2 --
> >>   common/board_f.c             |  4 ++--
> >>   common/stdio.c               |  5 +----
> >>   include/configs/PATI.h       |  7 +++----
> >>   include/configs/am335x_evm.h |  5 -----
> >>   include/configs/am43xx_evm.h |  6 ------
> >>   scripts/config_whitelist.txt |  1 -
> >>   10 files changed, 16 insertions(+), 39 deletions(-)
> > 
> > Hmm.. missing this patch in patchwork ... nevertheless:
> > 
> > Reviewed-by: Heiko Schocher <hs@denx.de>
> > 
> > Applied to u-boot-i2c/next
> 
> As pointed out in the other thread to the same patch[1] it breaks am335x
> and am43xx boards :(
> 
> [1] https://www.mail-archive.com/u-boot@lists.denx.de/msg246595.html

Which is why it wasn't missing in patchwork, but marked as Changes
Requested as Lokesh provided the diffs to fix the platform instead.
diff mbox

Patch

diff --git a/README b/README
index f31bb3dffe..0bee478ec7 100644
--- a/README
+++ b/README
@@ -2214,7 +2214,9 @@  The following options need to be configured:
 
 		If you do not have i2c muxes on your board, omit this define.
 
-- Legacy I2C Support:	CONFIG_HARD_I2C
+----under removal:
+
+- Legacy I2C Support:	CONFIG_SOFT_I2C
 
 		NOTE: It is intended to move drivers to CONFIG_SYS_I2C which
 		provides the following compelling advantages:
@@ -2223,14 +2225,12 @@  The following options need to be configured:
 		- approved multibus support
 		- better i2c mux support
 
-		** CONFIG_HARD_I2C is now being removed **
-
-----under removal:
+		** CONFIG_SOFT_I2C is now being removed **
 
-		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
-		to run and CONFIG_SYS_I2C_SLAVE to be the address of this node (ie
-		the CPU's i2c node address).
+		With CONFIG_SOFT_I2C you will need to define
+		CONFIG_SYS_I2C_SPEED to be the frequency (in Hz) at which you
+		wish your i2c bus to run and CONFIG_SYS_I2C_SLAVE to be the
+		address of this node (ie the CPU's i2c node address).
 
 		Now, the u-boot i2c code for the mpc8xx
 		(arch/powerpc/cpu/mpc8xx/i2c.c) sets the CPU up as a master node
diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
index 3e842d3187..0d2e84011d 100644
--- a/board/ti/am335x/board.c
+++ b/board/ti/am335x/board.c
@@ -67,11 +67,7 @@  static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
 #ifdef CONFIG_TI_I2C_BOARD_DETECT
 void do_board_detect(void)
 {
-	enable_i2c0_pin_mux();
-	i2c_init(CONFIG_SYS_OMAP24_I2C_SPEED, CONFIG_SYS_OMAP24_I2C_SLAVE);
-
-	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
-		printf("ti_i2c_eeprom_init failed\n");
+	printf("ti_i2c_eeprom_init failed\n");
 }
 #endif
 
diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
index 390cc168cd..a190893450 100644
--- a/board/ti/am43xx/board.c
+++ b/board/ti/am43xx/board.c
@@ -42,8 +42,7 @@  static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
 #ifdef CONFIG_TI_I2C_BOARD_DETECT
 void do_board_detect(void)
 {
-	if (ti_i2c_eeprom_am_get(-1, CONFIG_SYS_I2C_EEPROM_ADDR))
-		printf("ti_i2c_eeprom_init failed\n");
+	printf("ti_i2c_eeprom_init failed\n");
 }
 #endif
 
diff --git a/cmd/eeprom.c b/cmd/eeprom.c
index 0a0e4a2c1c..c9fde0d682 100644
--- a/cmd/eeprom.c
+++ b/cmd/eeprom.c
@@ -73,13 +73,11 @@  void eeprom_init(int bus)
 #endif
 
 	/* I2C EEPROM */
-#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
 #if defined(CONFIG_SYS_I2C)
 	if (bus >= 0)
 		i2c_set_bus_num(bus);
 #endif
 	i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
-#endif
 }
 
 static int eeprom_addr(unsigned dev_addr, unsigned offset, uchar *addr)
diff --git a/common/board_f.c b/common/board_f.c
index d9431ee79a..eed3e7be2a 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -184,7 +184,7 @@  __weak int dram_init_banksize(void)
 	return 0;
 }
 
-#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
+#if defined(CONFIG_SYS_I2C)
 static int init_func_i2c(void)
 {
 	puts("I2C:   ");
@@ -765,7 +765,7 @@  static const init_fnc_t init_sequence_f[] = {
 	misc_init_f,
 #endif
 	INIT_FUNC_WATCHDOG_RESET
-#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
+#if defined(CONFIG_SYS_I2C)
 	init_func_i2c,
 #endif
 #if defined(CONFIG_HARD_SPI)
diff --git a/common/stdio.c b/common/stdio.c
index 4d30017530..ee4f0bda9e 100644
--- a/common/stdio.c
+++ b/common/stdio.c
@@ -21,7 +21,7 @@ 
 #include <logbuff.h>
 #endif
 
-#if defined(CONFIG_HARD_I2C) || defined(CONFIG_SYS_I2C)
+#if defined(CONFIG_SYS_I2C)
 #include <i2c.h>
 #endif
 
@@ -346,9 +346,6 @@  int stdio_add_devices(void)
 #ifdef CONFIG_SYS_I2C
 	i2c_init_all();
 #else
-#if defined(CONFIG_HARD_I2C)
-	i2c_init (CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
-#endif
 #endif
 #ifdef CONFIG_DM_VIDEO
 	/*
diff --git a/include/configs/PATI.h b/include/configs/PATI.h
index 2c048abba6..045aa0a720 100644
--- a/include/configs/PATI.h
+++ b/include/configs/PATI.h
@@ -39,7 +39,6 @@ 
 #define CONFIG_CMD_REGINFO
 #define CONFIG_CMD_REGINFO
 #define CONFIG_CMD_BSP
-#define CONFIG_CMD_EEPROM
 #define CONFIG_CMD_IRQ
 
 #define CONFIG_BOOTCOMMAND	""	/* autoboot command			*/
@@ -136,16 +135,16 @@ 
 #define CONFIG_SYS_MAX_FLASH_BANKS	1
 #define CONFIG_SYS_MAX_FLASH_SECT	128
 
-#define	CONFIG_ENV_IS_IN_EEPROM
 #ifdef	CONFIG_ENV_IS_IN_EEPROM
 #define CONFIG_ENV_OFFSET		0
 #define CONFIG_ENV_SIZE		2048
 #endif
 
-#undef  CONFIG_ENV_IS_IN_FLASH
+#define CONFIG_ENV_IS_IN_FLASH
 #ifdef	CONFIG_ENV_IS_IN_FLASH
 #define	CONFIG_ENV_SIZE		0x00002000		/* Set whole sector as env		*/
-#define CONFIG_ENV_OFFSET		((0 - CONFIG_SYS_FLASH_BASE) - CONFIG_ENV_SIZE)		/* Environment starts at this adress	*/
+/* Environment starts at this adress	*/
+#define CONFIG_ENV_OFFSET	((0 - CONFIG_SYS_FLASH_BASE) - 2048)
 #endif
 
 #define CONFIG_SPI		1
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index fc8a08f5b7..5c1a6d64da 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -176,11 +176,6 @@ 
 #define CONFIG_SYS_NS16550_COM5		0x481a8000	/* UART4 */
 #define CONFIG_SYS_NS16550_COM6		0x481aa000	/* UART5 */
 
-#define CONFIG_CMD_EEPROM
-#define CONFIG_ENV_EEPROM_IS_ON_I2C
-#define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* Main EEPROM */
-#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2
-
 /* PMIC support */
 #define CONFIG_POWER_TPS65217
 #define CONFIG_POWER_TPS65910
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index 1feb946834..ba185ebf5a 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -22,12 +22,6 @@ 
 #define CONFIG_SYS_NS16550_SERIAL
 #endif
 
-/* I2C Configuration */
-#define CONFIG_CMD_EEPROM
-#define CONFIG_ENV_EEPROM_IS_ON_I2C
-#define CONFIG_SYS_I2C_EEPROM_ADDR	0x50	/* Main EEPROM */
-#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	2
-
 /* Power */
 #define CONFIG_POWER
 #define CONFIG_POWER_I2C
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index 5e515d215c..d18497c448 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -1196,7 +1196,6 @@  CONFIG_G_DNL_UMS_VENDOR_NUM
 CONFIG_H264_FREQ
 CONFIG_H8300
 CONFIG_HALEAKALA
-CONFIG_HARD_I2C
 CONFIG_HARD_SPI
 CONFIG_HASH_VERIFY
 CONFIG_HAS_DATAFLASH