Temat: Uboot i adres startowy
Witam, mam taki problem z routerem na układzie rt3052 po podmianie uboota. Początek flasha jest pod adresem bf000000 (lub bfc00000), obraz openwrt od bf040000, a uboot próbuje wstać spod bf050000 (wywalając "Bad magic number"). Po wpisaniu z palca 'bootm bfc40000' lub 'bootm bf040000' z linii komend, system wstaje. Fabryczny uboot nie rozpoznał większej kości ram, więc musiałem podmienić.
Próbowałem modyfikować environment, np przez 'setenv bootargs bootm bf040000' ale nic nie dało.
Co ciekawe jest ustawiona zmienna 'kernel_addr=BFC40000'
Da się coś zrobić bez konieczności kompilowania własnego uboota/openwrt, żeby wstawał automatycznie z właściwego adresu?
Environment:
U-Boot 1.1.3 (Apr 22 2013 - 16:09:02)
RT3052 # printenv
bootdelay=3
baudrate=57600
ethaddr="00:0C:43:30:52:11"
ipaddr=192.168.1.1
serverip=192.168.1.131
ramargs=setenv bootargs root=/dev/ram rw
addip=setenv bootargs $(bootargs) ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname):$(netdev):off
addmisc=setenv bootargs $(bootargs) console=ttyS0,$(baudrate) ethaddr=$(ethaddr) panic=1
flash_self=run ramargs addip addmisc;bootm $(kernel_addr) $(ramdisk_addr)
kernel_addr=BFC40000
u-boot=u-boot.bin
load=tftp 8A100000 $(u-boot)
u_b=protect off 1:0-1;era 1:0-1;cp.b 8A100000 BC400000 $(filesize)
loadfs=tftp 8A100000 root.cramfs
u_fs=era bc540000 bc83ffff;cp.b 8A100000 BC540000 $(filesize)
test_tftp=tftp 8A100000 root.cramfs;run test_tftp
ethact=Eth0 (10/100-M)
bootcmd=tftp
stdin=serial
stdout=serial
stderr=serial