[U-Boot] duplicate call to i2c_init from few lib_<arch>/board.c init sequence

Gururaja Hebbar K R gururajakr at sanyo.co.in
Mon Sep 8 09:26:35 CEST 2008


Hi,

I was going through the i2c module support in u-boot-1.3.4 source & found few duplicate calls to i2c_init.

For the below target platform,

uboot-1.3.4\lib_ppc\board.c
	1. Initially, during init_sequence, init_func_i2c() is called which in turn calls i2c_init() (uboot-1.3.4\lib_ppc\board.c @ line 250)
	2. Again, board_init_r() calls devices_init() (@ line 980) which in turn calls i2c_init() (uboot-1.3.4\common\devices.c @ line 183)

uboot-1.3.4\lib_m68k\board.c
	1. Initially, during init_sequence, init_func_i2c() is called which in turn calls i2c_init() (uboot-1.3.4\lib_m68k\board.c @ line 209)
	2. Again, board_init_r() calls devices_init() (@ line 636) which in turn calls i2c_init() (uboot-1.3.4\common\devices.c @ line 183)	
	

uboot-1.3.4\lib_blackfin\board.c
	1. Initially, board_init_r() calls devices_init() (@ line 420) which in turn calls i2c_init() (uboot-1.3.4\common\devices.c @ line 183)
	2. Again board_init_r() calls init_func_i2c() (@ line 454) which in turn calls i2c_init() (uboot-1.3.4\lib_blackfin\board.c @ line 339)


uboot-1.3.4\lib_arm\board.c
	1. Initially, during init_sequence, init_func_i2c() is called which in turn calls i2c_init() (uboot-1.3.4\lib_arm\board.c @ line 230)
	2. Again, a call is made to devices_init() (@ line 426) which in turn calls i2c_init() (uboot-1.3.4\common\devices.c @ line 183)

I think, these calls are just duplicate calls. If they are then we can remove them just to speed to boot-up process


If i can know which is the valid call, then i can remove the duplicate & create a patch & send it upstream

TIA

Regards
Gururaja


More information about the U-Boot mailing list