This value of BSS looks correct in the system.map file. I am attaching that and the sytem.mss file as well. The only thing of interest here is the petalinx below. There is no address, just the size. BEGIN OS PARAMETER OS_NAME = petalinux PARAMETER OS_VER = 1.00.b PARAMETER PROC_INSTANCE = microblaze_0 PARAMETER STDIN = RS232_Uart PARAMETER STDOUT = RS232_Uart PARAMETER main_memory = mch_opb_ddr_0 PARAMETER main_memory_bank = 0 PARAMETER main_memory_size = 0x08000000 END -----Original Message----- From: owner-microblaze-uclinux@xxxxxxxxxxxxxx [mailto:owner-microblaze-uclinux@xxxxxxxxxxxxxx] On Behalf Of John Williams Sent: Monday, April 28, 2008 6:49 PM To: microblaze-uclinux@xxxxxxxxxxxxxx Subject: Re: [microblaze-uclinux] Hang in machine_early_init Hi Ken, Kenneth Schultz wrote: > I am having a problem with hanging after copying code in > machine_early_int. The code flow is given at the bottom. Notice that I > added out some print statements which give the following lines > > FS-BOOT: Booting image... > Found romfs @ 0x3018a000 (0x000f6000) > #### klimit 3019d000 #### > Moving 0x000f6000 bytes from 0x3018a000 to 0x3019cf20 > New klimit: 0x30293000 > MemSet1 __bss_start 0x3018a000 > MemSet1 __bss_stop 0x3019cf20 > MemSet1 __bss_stop-__bss_start 0x12f20 > > > > However, I have some concerns about this range of memory. Since I am > not using a boot loader, I just copied image.bin from 0x3000_0000 to > 0x3028_0026 and then branched to 0x3000_0000. So the below code seems > to be deleting parts of the downloaded code. This, I expect is my > problem and I need to re-locate portions of this code. I was under the > impression, that I should just be able to call this image and it will > relocate itself. I may be wrong here... image.bin is intended to be loaded and executed at the start address (no relocation required). In that sense you seem to be doing the right thing, but this stuff should Just Work. Note that the contents of BSS are not contained in image.bin (would just be 10's of Kb of zeros). So, the relocation is just moving the ROMFS image from bss_start where it ends up after the download (it's appended directly to linux.bin binary), to _bss_stop where the MTD mapping driver expects to find it. Some things to check. Does the reported BSS size (0x12f20) match what you see from analysing linux-2.6.x/System.map? Are you doing anything funky with memory or the kernel link script? Have you run and verified a simple memory test standalone app? Any override settings in system.mss for MAIN_MEMORY_START or _OFFSET? /John ___________________________ microblaze-uclinux mailing list microblaze-uclinux@xxxxxxxxxxxxxx Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/
Attachment:
system.mss
Description: system.mss
Attachment:
System.map
Description: System.map