Message ID | 1296734392-15203-3-git-send-email-daniel.schwierzeck@googlemail.com |
---|---|
State | Accepted |
Commit | ec36d1f422f1a5b06d24db1ca8aedfacf0c8a30f |
Headers | show |
On 02/03/2011 08:59 PM, daniel.schwierzeck@googlemail.com wrote: > The linker of recent toolchains complains about multiple definitions > on final linking of u-boot binary. This patch removes all redundant > object files from u-boot.lds those are already added to .text section > by the linker. Confirmed. > That patch could not be tested but the resulting u-boot.map still looks > good. The start symbol is at 0xB0000000, the environment at 0xB0008000 > so u-boot should boot. Agreed. > --- a/board/purple/u-boot.lds > +++ b/board/purple/u-boot.lds > @@ -36,11 +36,6 @@ SECTIONS > { > arch/mips/cpu/start.o (.text) > board/purple/lowlevel_init.o (.text) > - arch/mips/cpu/cache.o (.text) > - common/main.o (.text) > - common/dlmalloc.o (.text) > - common/cmd_boot.o (.text) > - lib/zlib.o (.text) > . = DEFINED(env_offset) ? env_offset : .; > common/env_embedded.o (.ppcenv) This is ok, though we have some room for further cealnups. With having .text statement in the lowlevel_init.S, we could remove all these lines. Applied anyway, thanks for the patch.
Dear Shinya Kuribayashi, In message <4D4D3E6B.2040605@pobox.com> you wrote: > > > --- a/board/purple/u-boot.lds > > +++ b/board/purple/u-boot.lds > > @@ -36,11 +36,6 @@ SECTIONS > > { > > arch/mips/cpu/start.o (.text) > > board/purple/lowlevel_init.o (.text) > > - arch/mips/cpu/cache.o (.text) > > - common/main.o (.text) > > - common/dlmalloc.o (.text) > > - common/cmd_boot.o (.text) > > - lib/zlib.o (.text) > > . = DEFINED(env_offset) ? env_offset : .; > > common/env_embedded.o (.ppcenv) > > This is ok, though we have some room for further cealnups. With having > .text statement in the lowlevel_init.S, we could remove all these lines. The prupose of explicitly pulling in these objects at that place is to fill in the first flash sector below the sector(s) that is/are reserved for the environment (we call this setup "embedded environment"). But then, the Purple board has not been actively maintained for years, and I guess we could as well remove it. At least I have not had access to this board for several yars. Best regards, Wolfgang Denk
diff --git a/board/purple/u-boot.lds b/board/purple/u-boot.lds index 542601a..719f268 100644 --- a/board/purple/u-boot.lds +++ b/board/purple/u-boot.lds @@ -36,11 +36,6 @@ SECTIONS { arch/mips/cpu/start.o (.text) board/purple/lowlevel_init.o (.text) - arch/mips/cpu/cache.o (.text) - common/main.o (.text) - common/dlmalloc.o (.text) - common/cmd_boot.o (.text) - lib/zlib.o (.text) . = DEFINED(env_offset) ? env_offset : .; common/env_embedded.o (.ppcenv)
The linker of recent toolchains complains about multiple definitions on final linking of u-boot binary. This patch removes all redundant object files from u-boot.lds those are already added to .text section by the linker. That patch could not be tested but the resulting u-boot.map still looks good. The start symbol is at 0xB0000000, the environment at 0xB0008000 so u-boot should boot. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com> Cc: Wolfgang Denk <wd@denx.de> --- board/purple/u-boot.lds | 5 ----- 1 files changed, 0 insertions(+), 5 deletions(-) -- 1.7.3.5