[U-Boot-Users] [PATCH] fsl-i2c: fix writes to data segment before relocation

Timur Tabi timur at freescale.com
Mon Jul 21 22:31:29 CEST 2008


David Hawkins wrote:
> Hi Timur,
> 
>> -	i2c_bus_speed[0] = set_i2c_bus_speed(dev, gd->i2c1_clk, speed);
>> +	temp = set_i2c_bus_speed(dev, gd->i2c1_clk, speed);
>> +	if (gd->flags & GD_FLG_RELOC)
>> +		i2c_bus_speed[0] = temp;
> 
> Does i2c_init() get called again after relocation?

Yes.

> I guess in some cases a board with fixed DDR would not
> need to initialize the I2C controller until after
> relocation.

We're okay then, too.

> If you need I2C speed tracking code, why not just re-read
> the I2C controller registers, and determine the speed from
> there? That is independent of relocation.

I suppose we could do that.  I was planning on rewriting the I2C subsystem one
day, anyway.


-- 
Timur Tabi
Linux kernel developer at Freescale




More information about the U-Boot mailing list