
Sorry for top post. This is the third message of the thread being re-sent in plain text. I'll also add that the test case below also hangs on trying to bootm a kernel in flash just as it did in the nfs boot case of the shown below.
On Wed, Apr 7, 2010 at 5:07 PM, Brian Hutchinson b.hutchman@gmail.com wrote:
#if CFG_ENV_SECT_SIZE > CFG_ENV_SIZE up_data = (end_addr_new + 1 - ((long)flash_addr_new + CFG_ENV_SIZE)); debug ("Data to save 0x%x\n", up_data); if (up_data) { if ((saved_data = malloc(up_data)) == NULL) { printf("Unable to save the rest of sector (%ld)\n", up_data); goto Done; } memcpy(saved_data, (void *)((long)flash_addr_new + CFG_ENV_SIZE), up_data); debug ("Data (start 0x%x, len 0x%x) saved at 0x%x\n", (long)flash_addr_new + CFG_ENV_SIZE, up_data, saved_data); } #endif
I guess I don't understand at all why flash_addr_new + CFG_ENV_SIZE is getting saved off when I want my redundant environment to start at flash_addr_new.
So, I went back to the other test case I'm trying where my CFG_ENV_SIZE is equal to flash sector size (256k in my case) which makes the redundant environment work but when I try to NFS boot my board I get:
=> run fixed_nfs Ethernet PHY auto-negotiation complete Ethernet link: is up Ethernet link: Full-duplex mode Ethernet link: 100 Mbit/s Using pc20x_emac device TFTP from server 192.168.0.2; our IP address is 192.168.0.5 Filename 'uImage-cpe20x'. Load address: 0x200000 Loading: ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ######## done Bytes transferred = 1700872 (19f408 hex) ## Booting image at 00200000 ... Image Name: Linux-2.6.28-picochip-3.2.0 Created: 2010-04-05 19:24:18 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1700808 Bytes = 1.6 MB Load Address: 00008000 Entry Point: 00008000 Verifying Checksum ... OK
And then everything hangs. Should I play with moving around TEXT_BASE (0x05000000), linker files? I'm kind of stumped at the moment. :(
Regards,
Brian