RE: [U-Boot-Users] U-boot 1.1.2 on SMDK2410

Thisis only to be expected. Please install U-Boot in flash as required, and then simply reset the board to start it.
Actually, the other reason why I though that u-boot for the SMDK2410 may execute out of RAM is that the resulting elf file is linked to reside at address 0x33F80000. The SDRAM on the SMDK2410 lives at address 0x30000000, so I made the logical assumption that u-boot was to be executed out of RAM. Below is an objdump of the elf file.
If u-boot is to be executed from FLASH, would it be fair to think that <_start> should be at 0x0 (where boot FLASH is living).
[tehn-yit.chin@riesling u-boot-1.1.2]$ arm-linux-objdump -D u-boot | more
u-boot: file format elf32-littlearm
Disassembly of section .text:
33f80000 <_start>: 33f80000: ea000012 b 33f80050 <reset> 33f80004: e59ff014 ldr pc, [pc, #20] ; 33f80020 <_undefined_instruction> 33f80008: e59ff014 ldr pc, [pc, #20] ; 33f80024 <_software_interrupt> 33f8000c: e59ff014 ldr pc, [pc, #20] ; 33f80028 <_prefetch_abort> 33f80010: e59ff014 ldr pc, [pc, #20] ; 33f8002c <_data_abort> 33f80014: e59ff014 ldr pc, [pc, #20] ; 33f80030 <_not_used> 33f80018: e59ff014 ldr pc, [pc, #20] ; 33f80034 <_irq> 33f8001c: e59ff014 ldr pc, [pc, #20] ; 33f80038 <_fiq>
33f80020 <_undefined_instruction>: 33f80020: 33f80140 mvnccs r0, #16 ; 0x10
33f80024 <_software_interrupt>: 33f80024: 33f801a0 mvnccs r0, #40 ; 0x28
33f80028 <_prefetch_abort>: 33f80028: 33f80200 mvnccs r0, #0 ; 0x0
33f8002c <_data_abort>: 33f8002c: 33f80260 mvnccs r0, #6 ; 0x6
33f80030 <_not_used>: 33f80030: 33f802c0 mvnccs r0, #12 ; 0xc
33f80034 <_irq>: 33f80034: 33f80320 mvnccs r0, #-2147483648 ; 0x80000000
33f80038 <_fiq>: 33f80038: 33f80380 mvnccs r0, #2 ; 0x2 33f8003c: deadbeef cdple 14, 10, cr11, cr13, cr15, {7}
33f80040 <_TEXT_BASE>: 33f80040: 33f80000 mvnccs r0, #0 ; 0x0
33f80044 <_armboot_start>: 33f80044: 33f80000 mvnccs r0, #0 ; 0x0
33f80048 <_bss_start>: 33f80048: 33f965a4 mvnccs r6, #687865856 ; 0x29000000
33f8004c <_bss_end>:
------------ cut ------------------------------------------------------
If u-boot is to be burned in FLASH, the first branch instruction will cause it jump into uninitialise code in the SDRAM.
Should I change the linker configuration to link it to execute at 0x0?
Many thanks,
Tehn Yit Chin Software Engineer, Grey Innovation Pty. Ltd.

In message 9AEDBAA573BBD346BCF9637D80097D910FEEB4@greysvr02.GreyInnovation.com you wrote:
Actually, the other reason why I though that u-boot for the SMDK2410 may execute out of RAM is that the resulting elf file is linked to reside at address 0x33F80000. The SDRAM on the SMDK2410 lives at address
This is where the code will be copied to once the system has been initialized so far.
If u-boot is to be executed from FLASH, would it be fair to think that <_start> should be at 0x0 (where boot FLASH is living).
No. It's just using enough of position-independent code to bootstrap itself. Remember that this is a bootloader, not a standard application.
Best regards,
Wolfgang Denk
participants (2)
-
Tehn-Yit Chin
-
Wolfgang Denk