From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Hobi Date: Tue, 09 Nov 2010 19:24:42 +0100 Subject: [U-Boot] [PATCH V4 1/2] arm926ejs: fix linker file for newer ld support In-Reply-To: <1288909332-26220-1-git-send-email-albert.aribaud@free.fr> References: <1288909332-26220-1-git-send-email-albert.aribaud@free.fr> Message-ID: <4CD991EA.6090004@schmid-telecom.ch> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Albert, On 04.11.2010 23:22, Albert Aribaud wrote: > older ld emitted all ELF relocations in input sections named > .rel.dyn, whereas newer ld uses names of the form .rel*. The > linker script only collected .rel.dyn input sections. Rewrite > to collect all .rel* input sections and overlay with .bss. Tested-by: Daniel Hobi Thank you. This patch is required to get Kirkwood-based boards working again when using the CodeSourcery 2009q3 toolchain. But shouldn't this change be applied to all ARM linker scripts, ie arch/arm/cpu/*/u-boot.lds? And on many ARM platforms (including Kirkwood), the timer implementation is still accessing BSS variables before relocation. Is someone working on this? Candidates are: $ git grep "static ulong timestamp" arch/arm/cpu/arm1136/mx31/timer.c:static ulong timestamp; arch/arm/cpu/arm1136/omap24xx/timer.c:static ulong timestamp; arch/arm/cpu/arm1176/tnetv107x/timer.c:static ulong timestamp; arch/arm/cpu/arm720t/interrupts.c:static ulong timestamp; arch/arm/cpu/arm920t/a320/timer.c:static ulong timestamp; arch/arm/cpu/arm920t/at91rm9200/timer.c:static ulong timestamp; arch/arm/cpu/arm920t/s3c24x0/timer.c:static ulong timestamp; arch/arm/cpu/arm926ejs/davinci/timer.c:static ulong timestamp; arch/arm/cpu/arm926ejs/kirkwood/timer.c:static ulong timestamp; arch/arm/cpu/arm926ejs/mx25/timer.c:static ulong timestamp; arch/arm/cpu/arm926ejs/mx27/timer.c:static ulong timestamp; arch/arm/cpu/arm926ejs/omap/timer.c:static ulong timestamp; arch/arm/cpu/arm926ejs/orion5x/timer.c:static ulong timestamp; arch/arm/cpu/arm926ejs/spear/timer.c:static ulong timestamp; arch/arm/cpu/arm926ejs/versatile/timer.c:static ulong timestamp; arch/arm/cpu/armv7/mx5/timer.c:static ulong timestamp; arch/arm/cpu/armv7/omap-common/timer.c:static ulong timestamp; arch/arm/cpu/lh7a40x/timer.c:static ulong timestamp; arch/arm/cpu/s3c44b0/timer.c:static ulong timestamp; Best regards, Daniel