alecs-art:
покажи команды как шьешь и что за образ
[spoiler=Стандартным способом]tftp 0x80200000 f.bin
erase 0x9f020000 +7с000
cp.b 0x80200000 0x9f020000 0x7с000
Также я заметил, что когда я заливаю стандартную прошивку через режим восстановление, то она пишется по адресу 0x9f040000
Сами прошивки брал с просторов интернета.
Отсюда
скачать (там есть файл flash.txt, так я тоже пробовал)
С китайских сайтов
смотримИ то что мне китаец с аликспреса прислал
скачатьВосстанавливаюсь через http прошивкой скаченной с китайского оф сайта, которая весит 8,192,512, шиться питаюсь прошивками которые весят 8,126,464.
Обратите внимание что два старта uboot (один COMPRESSED) и образ грузится по адресу 9f040000, а не 9f020000 как у всех
[spoiler=Логи]U-Boot 1.1.4 (May 18 2015 - 18:23:34)(COMPRESSED)
ap135 - Scorpion 1.0
DRAM: 128 MB
Top of RAM usable for U-Boot at: 88000000
Reserving 212k for U-Boot at: 87fc8000
Reserving 132k for malloc() at: 87fa7000
Reserving 44 Bytes for Board Info at: 87fa6fd4
Reserving 36 Bytes for Global Data at: 87fa6fb0
Reserving 128k for boot params() at: 87f86fb0
Stack Pointer at: 87f86f98
Now running in RAM - U-Boot at: 87fc8000
Flash Manuf Id 0xef, DeviceId0 0x40, DeviceId1 0x17
Flash: 8 MB
Using default environment
Autobooting in 1 seconds
verifying uboot partition...
ok
verifying kernel and romfs partition...
ok
U-Boot 1.1.4 (Jun 24 2015 - 19:03:35)
ap135 - Scorpion 1.0
DRAM: 128 MB
Top of RAM usable for U-Boot at: 88000000
Reserving 140k for U-Boot at: 87fdc000
Reserving 132k for malloc() at: 87fbb000
Reserving 44 Bytes for Board Info at: 87fbafd4
Reserving 36 Bytes for Global Data at: 87fbafb0
Reserving 128k for boot params() at: 87f9afb0
Stack Pointer at: 87f9af98
Now running in RAM - U-Boot at: 87fdc000
Flash Manuf Id 0xef, DeviceId0 0x40, DeviceId1 0x17
Flash: 8 MB
Using default environment
Now booting Linux!
Autobooting in 1 seconds
## Booting image at 9f040000 ...
Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80060000) ...
## Giving linux memsize in bytes, 134217728
Starting kernel ...[/spoiler]
C учетом того что логи у меня показывают на другие адреса
[spoiler=я попробовал прошится так]tftp 0x88000000 f.bin
erase 0x9f040000 +7с000
cp.b 0x88000000 0x9f040000 0x7с000
Сразу после ресета - режим востановления:
[spoiler=Логи]U-Boot 1.1.4 (May 18 2015 - 18:23:34)(COMPRESSED)
ap135 - Scorpion 1.0
DRAM: 128 MB
Top of RAM usable for U-Boot at: 88000000
Reserving 212k for U-Boot at: 87fc8000
Reserving 132k for malloc() at: 87fa7000
Reserving 44 Bytes for Board Info at: 87fa6fd4
Reserving 36 Bytes for Global Data at: 87fa6fb0
Reserving 128k for boot params() at: 87f86fb0
Stack Pointer at: 87f86f98
Now running in RAM - U-Boot at: 87fc8000
Flash Manuf Id 0xef, DeviceId0 0x40, DeviceId1 0x17
Flash: 8 MB
Using default environment
Autobooting in 1 seconds
Firmware check failed!
Enter recovery mode.
In: serial
Out: serial
Err: serial
Net: ath_gmac_enet_initialize...
athrs_sgmii_res_cal: cal value = 0x1
ath_gmac_enet_initialize: reset mask:0xc02200
Scorpion ----> S17 PHY *
Vlan config...
s17 phy0 register value 0x00004140
TEST: FINAL REG VAL after TX Calibration - 0x46000000
TEST: FINAL XMII VAL after RX Calibration - 0x56000000
TEST: FINAL ETH_CFG VAL after RX Calibration - 0x00028001
athrs17_reg_init: complete
GMAC: cfg1 0x80000000 cfg2 0x7335
eth0: ba:be:fa:ce:75:00
eth0 up
athrs17_reg_init_wan done
SGMII in forced mode
athr_gmac_sgmii_setup SGMII done
GMAC: cfg1 0x800c0000 cfg2 0x7214
eth1: ba:be:fa:ce:75:00
eth1 up
eth0, eth1
Setting 0x18116290 to 0x458ba14f
Running command httpd!--Debug by CaiBin
HTTP server is ready!
Trying eth1
eth1 link down
FAIL
Trying eth1
eth1 link down
FAIL
Trying eth1
dup 1 speed 1000
keyword not found.
relace FwID failed, exit
Attaching option 01 to list
Attaching option 03 to list
Attaching option 06 to list
file: apps/dhcpd/dhcpd.c,line: 870==
hcpd init OK. --debug by HouXB
HTTP server is starting at IP: 192.168.1.1
file: lib_uip.c,line: 115==:uip set c0a8-101. --debug by HouXB
file: lib_uip.c,line: 130==:start infinite loop! --debug by HouXB[/spoiler]
При востановление грузит прошивку в память по адресу 0x82000000, потом пишет по 0x9f030000
[spoiler=Логи востановления]Data will be downloaded at 0x82000000 in RAM
Upload file size: 8192512 bytes
Loading: #################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#############################################################
firmware RSA signiture check OK
firmware support my HwID
verifying uboot partition...
ok
verifying kernel and romfs partition...
ok
firmware check finished, ok to upgrade
HTTP upload is done! Upgrading...
execute upgrade...
Erasing flash...
First 0x30 last 0x7ff sector size 0x1000
=====>erase sector 64k 0x00030000
=====>erase sector 64k 0x00040000
=====>erase sector 64k 0x00050000
=====>erase sector 64k 0x00060000
=====>erase sector 64k 0x00070000
=====>erase sector 64k 0x00080000
=====>erase sector 64k 0x00090000
=====>erase sector 64k 0x000A0000
=====>erase sector 64k 0x000B0000
=====>erase sector 64k 0x000C0000
=====>erase sector 64k 0x000D0000
=====>erase sector 64k 0x000E0000
=====>erase sector 64k 0x000F0000
=====>erase sector 64k 0x00100000
=====>erase sector 64k 0x00110000
=====>erase sector 64k 0x00120000
=====>erase sector 64k 0x00130000
=====>erase sector 64k 0x00140000
=====>erase sector 64k 0x00150000
=====>erase sector 64k 0x00160000
=====>erase sector 64k 0x00170000
=====>erase sector 64k 0x00180000
=====>erase sector 64k 0x00190000
=====>erase sector 64k 0x001A0000
=====>erase sector 64k 0x001B0000
=====>erase sector 64k 0x001C0000
=====>erase sector 64k 0x001D0000
=====>erase sector 64k 0x001E0000
=====>erase sector 64k 0x001F0000
=====>erase sector 64k 0x00200000
=====>erase sector 64k 0x00210000
=====>erase sector 64k 0x00220000
=====>erase sector 64k 0x00230000
=====>erase sector 64k 0x00240000
=====>erase sector 64k 0x00250000
=====>erase sector 64k 0x00260000
=====>erase sector 64k 0x00270000
=====>erase sector 64k 0x00280000
=====>erase sector 64k 0x00290000
=====>erase sector 64k 0x002A0000
=====>erase sector 64k 0x002B0000
=====>erase sector 64k 0x002C0000
=====>erase sector 64k 0x002D0000
=====>erase sector 64k 0x002E0000
=====>erase sector 64k 0x002F0000
=====>erase sector 64k 0x00300000
=====>erase sector 64k 0x00310000
=====>erase sector 64k 0x00320000
=====>erase sector 64k 0x00330000
=====>erase sector 64k 0x00340000
=====>erase sector 64k 0x00350000
=====>erase sector 64k 0x00360000
=====>erase sector 64k 0x00370000
=====>erase sector 64k 0x00380000
=====>erase sector 64k 0x00390000
=====>erase sector 64k 0x003A0000
=====>erase sector 64k 0x003B0000
=====>erase sector 64k 0x003C0000
=====>erase sector 64k 0x003D0000
=====>erase sector 64k 0x003E0000
=====>erase sector 64k 0x003F0000
=====>erase sector 64k 0x00400000
=====>erase sector 64k 0x00410000
=====>erase sector 64k 0x00420000
=====>erase sector 64k 0x00430000
=====>erase sector 64k 0x00440000
=====>erase sector 64k 0x00450000
=====>erase sector 64k 0x00460000
=====>erase sector 64k 0x00470000
=====>erase sector 64k 0x00480000
=====>erase sector 64k 0x00490000
=====>erase sector 64k 0x004A0000
=====>erase sector 64k 0x004B0000
=====>erase sector 64k 0x004C0000
=====>erase sector 64k 0x004D0000
=====>erase sector 64k 0x004E0000
=====>erase sector 64k 0x004F0000
=====>erase sector 64k 0x00500000
=====>erase sector 64k 0x00510000
=====>erase sector 64k 0x00520000
=====>erase sector 64k 0x00530000
=====>erase sector 64k 0x00540000
=====>erase sector 64k 0x00550000
=====>erase sector 64k 0x00560000
=====>erase sector 64k 0x00570000
=====>erase sector 64k 0x00580000
=====>erase sector 64k 0x00590000
=====>erase sector 64k 0x005A0000
=====>erase sector 64k 0x005B0000
=====>erase sector 64k 0x005C0000
=====>erase sector 64k 0x005D0000
=====>erase sector 64k 0x005E0000
=====>erase sector 64k 0x005F0000
=====>erase sector 64k 0x00600000
=====>erase sector 64k 0x00610000
=====>erase sector 64k 0x00620000
=====>erase sector 64k 0x00630000
=====>erase sector 64k 0x00640000
=====>erase sector 64k 0x00650000
=====>erase sector 64k 0x00660000
=====>erase sector 64k 0x00670000
=====>erase sector 64k 0x00680000
=====>erase sector 64k 0x00690000
=====>erase sector 64k 0x006A0000
=====>erase sector 64k 0x006B0000
=====>erase sector 64k 0x006C0000
=====>erase sector 64k 0x006D0000
=====>erase sector 64k 0x006E0000
=====>erase sector 64k 0x006F0000
=====>erase sector 64k 0x00700000
=====>erase sector 64k 0x00710000
=====>erase sector 64k 0x00720000
=====>erase sector 64k 0x00730000
=====>erase sector 64k 0x00740000
=====>erase sector 64k 0x00750000
=====>erase sector 64k 0x00760000
=====>erase sector 64k 0x00770000
=====>erase sector 64k 0x00780000
=====>erase sector 64k 0x00790000
=====>erase sector 64k 0x007A0000
=====>erase sector 64k 0x007B0000
=====>erase sector 64k 0x007C0000
=====>erase sector 64k 0x007D0000
=====>erase sector 64k 0x007E0000
=====>erase sector 64k 0x007F0000
Erased 2000 sectors
Copy to Flash... write addr: 9f030000
done
HTTP ugrade is done! Rebooting...
[/spoiler]
После востановления я внимательней присмотрелся к логам и увидел:
[spoiler=разметка]0x000000000000-0x00000001d800 : "factory_boot"
0x00000001d800-0x00000001e000 : "factory_info"
0x00000001e000-0x000000020000 : "art"
0x000000020000-0x000000030000 : "config"
0x000000030000-0x000000040000 : "boot"
0x000000040000-0x00000013fe64 : "kernel"
0x00000013fe64-0x0000006b0000 : "rootfs"
0x0000006b0000-0x000000800000 : "rootfs_data"
0x000000040000-0x000000800000 : "firmware"
целых 9 разделов. Стандартная разметка выглядит так вроде:
0x000000000000-0x000000020000 : "u-boot"
0x000000020000-0x000000120000 : "kernel"
0x000000120000-0x0000007e0000 : "rootfs"
0x0000007e0000-0x0000007f0000 : "config"
0x0000007f0000-0x000000800000 : "ART"[/spoiler]
Теперь понятно почему 2 раза грузится uboot, его действительно два. И один для востановления. Китайцы сделали дополнительный режим востановления (ну я судя по всему уже много раз протестил его, работает неплохо) Теперь только вопрос возможно ли все еще прошится через uboot и если да, то как обойти проверку прошивки.
Пока делаю бекап (командой md.b 8 мегабайт бекапится вся флеш долго), посмотрел что находится по адресу 1d800. Там записан mac, pin, devId, hwId, hwIdDes:{devModel, 2.4gChip, 5gChip, switch, hwVer} и flashSign длиной в 256 байт.
В итоге пере прошил его .
Перезаписал uboot на тот который стоит на v3. Можно и сразу, но я потом, загрузился с нового загружчика и записал openwrt. Все норм загрузилось, осталось только доделать штрихи в виде воставления мака из дампа и пароль (что это за пароль? wps?)
Не знаю стоит ли востанавливать старый арт? Судя по дампу, в старой разметке эта область не использовалась и он полность был затерт FFками.
В заключение: В v5 китайци намудрили. И обязательно нужно переписывать uboot на тот который в v3.
Исправлено: Andreychru, 03.06.2016 22:29