Hi,
I’m trying to update the firmware of my GL-B2200 in order to switch to OpenWrt. I’m following the instructions detailed here, i.e. using an openwrt-ipq40xx-generic-glinet_gl-b2200-squashfs-emmc.img
file to send it to Uboot.
If I use the official gunzipped eMMC OpenWrt image, everything works fine using the Uboot web UI or TFTP.
However, if I try to use an image I built, which is much bigger than the official OpenWrt one (55 M vs 39M), I’m not able to send the image to Uboot, as the download seems to stop after a fixed size limit (see below for detailed logs).
I’ve tried to find a hard-coded limit in the Uboot code, but I didn’t find anything. Is there a limit for the size of files that the Uboot is able to handle?
Using Uboot web UI
If I use the Uboot web UI, the download stops after 50790751 bytes sent. The Uboot console just hangs forever.
Uboot console output
Press press RESET button for more than 5 seconds to run web failsafe modeRESET button is pressed for: 5 second(s)
RESET button was pressed for 5 seconds
HTTP server is starting for firmware update…NetOurEther = 94:83:c4:15:96:21
HTTP server is starting at IP: 192.168.1.1
HTTP server is ready!Request for: /
274.uip_closed
Request for: /style.css
274.uip_closed
Found boundary value: “-----------------------------109002613118121432763846925744”
Data will be downloaded at 0x84000000 in RAM
Upgrade type: firmware
Upload file size: 57019107 bytes
Loading: #######################################
[…]
#######################################
########################
Using TFTP
If I use TFTP to download the file, the download stops at some point with a prefetch_abort
error.
Uboot console output
Hit "gl" key to stop booting: 0(IPQ40xx) # run lf
Using eth0 device
TFTP from server 192.168.1.2; our IP address is 192.168.1.1
Filename ‘openwrt-gl-b2200.bin’.
Load address: 0x84000000
Loading: #################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
###############prefetch abort
pc : [] lr : [<00000040>]
sp : 8706faf8 ip : 8706f82c fp : 8738474c
r10: 000005be r9 : 87368378 r8 : 8706ff4c
r7 : 000005bc r6 : 87369470 r5 : 0306fde8 r4 : 87389bfa
r3 : 000005bc r2 : 000005bc r1 : 87389bfe r0 : 8706f82c