
Hi,
On wo, 2014-05-07 at 09:14 -0700, York Sun wrote:
<snip> >> >> Since Crt0.S already created gd on the stack before calling >> board_init_f, can't the assignment of gd not simply be removed? >> Is there anything special about gdata? > > That does make sense, but what I find is that York's ocmmit > dec1861be90c948ea9fb771927d3d26a994d2e20 requires that gd be blanked > and its not. This causes bus_i2c_init to skip its initialization > because p->base is not zero. > > York, does this make sense? Your patch creates a dependence on > gd->srdata being blank which isn't the case with the SRAM when booting > from the IMX6 boot rom. >
GD should be cleared (zeroed). Then we don't have this problem. Whoever sets up gd (board_int_f, cpu_init_f, or others) should make sure gd is cleared. Why isn't it the case for IMX6 boot rom?
Seems fine to me. Albert, any objection against zeroing gd out in crt0.S?
And if not, shouldn't the same be done for arm64.
Jeroen