Analysis of the boot logs, flash data of factory firmware showed that (EU, HW 2.0):
- uboot env -
bootargs=console=ttyS1,115200
root=/dev/mtdblock2
rootfstype=squashfs
init=/sbin/init printk.time=1
flash_size=0x1000000
part_num=6
partitions=
0000000000020000uboot,
0002000000200000os-image,
0022000000da0000file-system,
00fc000000010000rom-config,
00fd000000010000user-config,
00ff000000010000radio, <--------------------------- THIS
0x00ff0000 - radio partition offset
0x00010000 - radio partiton size
- kernel boot log - mtd:
[ 2.008000] mtd .name = raspi, .size = 0x01000000 (16M) .erasesize = 0x00010000 (64K) .numeraseregions = 0
[ 2.020000] Creating 8 MTD partitions on "raspi":
[ 2.024000] 0x000000000000-0x000000020000 : "boot"
[ 2.028000] 0x000000020000-0x000000220000 : "kernel"
[ 2.036000] 0x000000220000-0x000000fa0000 : "rootfs"
[ 2.040000] mtd: partition "rootfs" set to be root filesystem
[ 2.048000] 0x000000fa0000-0x000000fb0000 : "dualconfig"
[ 2.052000] 0x000000fb0000-0x000000fc0000 : "ispconfig"
[ 2.060000] 0x000000fc0000-0x000000fd0000 : "romfile"
[ 2.064000] 0x000000fd0000-0x000000fe0000 : "config"
[ 2.068000] 0x000000fe0000-0x000000ff0000 : "radio" <- This is different from uboot
- kernel boot log - wifi drivers
[ 17.052000] MT7603E-->NVM is FLASH mode, flash_offset = 0xff0000
[ 17.060000] MT7603E-->1. Phy Mode = 14
[ 17.064000] MT7603E--> #### read 2.4G cal from flash !! ####
[ 17.096000] spiflash_ioctl_read, Read from 0x00ff0000 length 0x10000, ret 0, retlen 0x10000
[ 17.108000] read radio success, offset 0xff0000, size 0x200
[ 17.112000] MT7603E-->@@@ NICReadEEPROMParameters : pAd->FWLoad=0
[ 35.580000] NVM is FLASH mode. dev_idx [1] FLASH OFFSET [0xFF8000]
[ 35.584000]
[ 35.584000] #### read 5G cal from flash !! ####
[ 35.620000] spiflash_ioctl_read, Read from 0x00ff0000 length 0x10000, ret 0, retlen 0x10000
[ 35.632000] validFlashEepromID(): eeFlashId=7663, pAd->ChipID=7663
EEPROM params for WIFI is loaded (by function spiflash_ioctl_read) from offset 0xff0000 bypassing mtd sections
-
mtd part - radio
The partition is empty. Nothing but FFFFF... -
uboot - read flash from 0xff0000
# spi read 0xff0000 0x10000
read len: 65536
3 76 b 0 0 c 43 26 60 78 3 76 c3 14 ff ff ff ff 3 76 c3 14 ...
This is very reminiscent of a real "radio" partition.
This is a patch that makes corrections to mtd partitions
$ git diff
diff --git a/target/linux/ramips/dts/mt7621_tplink_mr600-v2-eu.dts b/target/linux/ramips/dts/mt7621_tplink_mr600-v2-eu.dts
index 165b48d209..6fa35d5a6d 100644
--- a/target/linux/ramips/dts/mt7621_tplink_mr600-v2-eu.dts
+++ b/target/linux/ramips/dts/mt7621_tplink_mr600-v2-eu.dts
@@ -137,8 +137,13 @@
};
partition@fe0000 {
- label = "radio";
+ label = "fakeradio";
reg = <0xfe0000 0x10000>;
+ };
+
+ partition@ff0000 {
+ label = "radio";
+ reg = <0xff0000 0x10000>;
read-only;
nvmem-layout {
After this patch there is no need to flash third-party eeprom to fix WIFI
Is there anyone willing to confirm the information collected?