RE: [U-Boot-Users] [PATCH] fix the ARM memory layout

Anders,
I just applied this patch to my ARM board, and it seems to mostly work. Prior to the memory change I would get stack dumps on aborts, since applying the patch I am unable to get on to print. Have you been able to generate one? I hook up the JTAG and do a little tracing...
One other comment... I have some test code which does a crc32 over the rom portion of u-boot to help validate the image, this code used armboot_end. In your patch you removed that symbol. Bss_start seems to be an "almost" proper substitution. I say almost as an ALIGN 4 is done before it. If the cmd size ended on a byte or half word boundary this would mess up the crc32 from what I might expect...In practice it might be that GCC generates things such that it pads to this anyway). Adding another symbol is easy, just thought I'd point out that it "might" not be strictly equivilent the way you did it...
Regards,
Richard W.
-----Original Message----- From: u-boot-users-admin@lists.sourceforge.net [mailto:u-boot-users-admin@lists.sourceforge.net] On Behalf Of Anders Larsen Sent: Friday, January 09, 2004 5:14 AM To: Wolfgang Denk Cc: u-boot-users@lists.sourceforge.net Subject: Re: [U-Boot-Users] [PATCH] fix the ARM memory layout
Wolfgang Denk wd@denx.de schreibt:
In message fc.004c4e48001e6497004c4e48001e6497.1e64ae@rea.de you wrote:
here's a fresh version of my rather intrusive patch from the 17.th sept. to rearrange the ARM memory layout to bring it in line with the README.
Sorry, I'm working through my backlog sequentuially, and I already added the other patch. Can you please check your current version against current top-of-tree in CVS and provide a new diff?
Hi Wolfgang,
the attached patch (against CVS 2004-01-08) fixes the rest of the ARM stuff I had in the pipe.
In particular, the abort-stack is now set up in the correct RAM area (which I had neglected in my previous patches), and the BSS is zeroed out as it should be (which most previous ARM implementations had neglected).
Furthermore, the magic variables 'armboot_end' and 'armboot_end_data' of the linker scripts are replaced by '__bss_start' and '_end', resp., which is a further step to eliminate unnecessary differences between the implementation of the CPU architectures.
Compilation tested with MAKEALL arm, functionality only tested on my PXA-based board.
CHANGELOG: Fix the ARM memory layout.
Cheers Anders
(Patch gzipped due to size constraints on the list)

"Woodruff, Richard" r-woodruff2@ti.com schreibt:
One other comment... I have some test code which does a crc32 over the rom portion of u-boot to help validate the image, this code used armboot_end. In your patch you removed that symbol. Bss_start seems to be an "almost" proper substitution. I say almost as an ALIGN 4 is done before it. If the cmd size ended on a byte or half word boundary this would mess up the crc32 from what I might expect...In practice it might be that GCC generates things such that it pads to this anyway). Adding another symbol is easy, just thought I'd point out that it "might" not be strictly equivilent the way you did it...
Well, on PPC the label is placed after the ALIGN, too (that's where I stole it ;-). If you need it for crc check of the ROM image, I don't see any reason why an additional label couldn't be added before the ALIGN.
We still need '__bss_start' (aligned) in order to clear the BSS correctly, however.
Cheers Anders
participants (2)
-
Anders Larsen
-
Woodruff, Richard