Commit 23090dac authored by Heiko Schocher's avatar Heiko Schocher Committed by Wolfgang Denk

disk/part.c: fix relocation fixup

Portions of this work were supported by funding from
the CE Linux Forum.
Signed-off-by: default avatarHeiko Schocher <hs@denx.de>
parent 4444b221
......@@ -78,13 +78,20 @@ block_dev_desc_t *get_dev(char* ifname, int dev)
{
const struct block_drvr *drvr = block_drvr;
block_dev_desc_t* (*reloc_get_dev)(int dev);
char *name;
while (drvr->name) {
name = drvr->name;
#ifndef CONFIG_RELOC_FIXUP_WORKS
name += gd->reloc_off;
#endif
while (name) {
name = drvr->name;
reloc_get_dev = drvr->get_dev;
#ifndef CONFIG_RELOC_FIXUP_WORKS
name += gd->reloc_off;
reloc_get_dev += gd->reloc_off;
#endif
if (strncmp(ifname, drvr->name, strlen(drvr->name)) == 0)
if (strncmp(ifname, name, strlen(name)) == 0)
return reloc_get_dev(dev);
drvr++;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment