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>
diff --git a/drivers/i2c/i2c_core.c b/drivers/i2c/i2c_core.c index fe341cd..b067b7c 100644 --- a/drivers/i2c/i2c_core.c +++ b/drivers/i2c/i2c_core.c
@@ -53,10 +53,6 @@ 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;