Despite the mishap I described in that thread, the router has been running smoothly since then. However, the onboard flash storage is extremely limited (only 8MB), which doesn't leave much room for installing additional packages. At one point, I even ran into an issue where the device couldn't save a configuration file because the storage was full!
I'm considering upgrading the flash chip by replacing it with a 16MB version of the same part number. While I’m confident in my soldering skills, I'm unsure about the software side of things, which is where I'd appreciate some guidance.
Has anyone tried something similar? What challenges might I face with OpenWrt when upgrading the flash storage? From what I've read in other forum threads and blog posts (I know this post is for another model, i wonder how possible is to perfom the same to the 9980 i have) , mentioned needing to recompile firmware and modify bootloaders after such upgrades. Does this mean I’d need to compile custom firmware for each new OpenWrt version moving forward?
Any insights or advice would be greatly appreciated!
Thanks in advance!
ps I have SPI flash programmers , SoIC8 clips and all that stuff.
So, if I understand correctly, the process would start by dumping the existing flash IC, then using a hex editor (or dd for those command line aficionados) to rearrange the partitions.
However, I’m a bit confused at this point. When looking at the partition table, the last partition is labeled as "radio." Is this the system partition you were referring to?
Also, regarding the dts file (I’m assuming you’re referring to the Device Tree Source file), would the changes involve specifying the new boot address and instructing the system on how to handle the larger flash size?
All 3-4 partitions after the firmware/rootfs area. Wiki says config, romfile, rom, radio
It would mean adjusting the location and size of each affected partition in the DTS. Your device has no own DTS, right? But is hijacking the td-w8980 DTS, right?
Then it is likely about these lines, which you need to adjust according to how you copied the contents. Curiously, the DTS is different than the mtd contents shown in the wiki article, so you may need to first look with a hex editor or so, what data and how much data is actually at the end of the chip...
In principle yes, but the devil is in the details...
The crucial part is that the "config partitions" are on places whre everybody expects them to be. (boardconfig, ddrsettings, radio according to DTS. No idea where rom,romfile come from to wiki)
You can adjust DTS, but that is just for Linux itself. But does the u-boot bootloader expect to find MAC adresses & DDR memory settings at a certain place? That has nothing to do with DTS.
Life was simpler in the early times, when components were less sophisticated.
Don't try to unsolder the old chip without backing up all its contents first. This can be done from within the release OpenWrt that is running now. cat /dev/mtdX > /tmp/mtdX.bin
with each partition then scp the bin files to a safe place (and perhaps rename them).
The /tmp filesystem in OpenWrt is a RAM disk. Files placed there are outside of the flash space. Of course they do not persist through a power cut or reboot.
Use the ones that have just a number not "ro" or "block" in the name. And do each partition file separately, you can cat them together in the proper order later. At least one of the partitions will be an overlap of some of the others so you're going to have some of the flash data twice.
Yes exactly the old flash may be damaged in removal.
but it failed , with the error ash: /usr/libexec/sftp-server: not found
My last try was to copy them from the router using a usb flash drive , it wouldnt mount and i read online it needs extra openwrt packages, and ... i dont have any space left
Scratch Dis .
i was able to do it the other way around , not from my host to the router , but from the router to the host