Fix: nommu I2C adapter relocation error

NoMMU systems have a access violation problem with i2c_reloc_fixup.
Blame for it is a double relocation of the adapter itself. The
i2c_adap_p is already relocated, if i2c_reloc_fixup is called.
This patch removes the relocation of i2c_adap_p from i2c_reloc_fixup
to fix this.

Signed-off-by: Jens Scharsig (BuS Elektronik) <esw@bus-elektronik.de>
This commit is contained in:
Jens Scharsig (BuS Elektronik) 2013-10-14 10:27:38 +02:00 committed by Heiko Schocher
parent b55b8eef35
commit 83d271b5ff

View File

@ -53,10 +53,6 @@ void i2c_reloc_fixup(void)
return;
for (i = 0; i < max; i++) {
/* adapter itself */
addr = (unsigned long)i2c_adap_p;
addr += gd->reloc_off;
i2c_adap_p = (struct i2c_adapter *)addr;
/* i2c_init() */
addr = (unsigned long)i2c_adap_p->init;
addr += gd->reloc_off;