Страница 2 из 3
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 14:41
saffers
Код: Выделить всё
U-Boot 2010.06-svn198 (Dec 08 2014 - 09:53:48)
Check spi flash controller v350... Found
Spi(cs1) ID: 0xC2 0x20 0x17 0xC2 0x20 0x17
Spi(cs1): Block:64KB Chip:8MB Name:"MX25L6406E"
envcrc 0xdaa32b8b
ENV_SIZE = 0xfffc
In: serial
Out: serial
Err: serial
USB: scanning bus for devices... 1 USB Device(s) found
0 Storage Device(s) found
Press CTRL-C to abort autoboot in 0 seconds8192 KiB hi_sfc at 0:0 is now current device
CFG_BOOT_ADDR:0x0
0ff:0x84000000
### /UbootLogo UbootLogoload complete: 21986 bytes loaded to 0x8e800000
jpeg decoding ...
<<addr=0x8e800000, size=0xb85f9, vobuf=0x8e800000>>
<<imgwidth=800, imgheight=600, linebytes=1600>>
decode success!!!!
decode jpeg success.
decode jpeg!
srcAddr 0x82000000, dstAddr 0x82000000
find_squashfs_file: name bin, start_block 0, offset 1284, type 1
find_squashfs_file: name boot, start_block 0, offset 1376, type 1
read inode: name boot, sb 0, of 1376, type 1
find_squashfs_file: name zImage.img, start_block 0, offset 1316, type 2
read inode: name zImage.img, sb 0, of 1316, type 2
### FS load complete: 1613452 bytes loaded to 0x82000000
## Booting kernel from Legacy Image at 82000000 ...
Image Name: linux
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1613388 Bytes = 1.5 MiB
Load Address: 80008000
Entry Point: 80008000
Loading Kernel Image ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Код: Выделить всё
hisilicon # help
? - alias for 'help'
base - print or set address offset
boot - boot default, i.e., run 'bootcmd'
bootd - boot default, i.e., run 'bootcmd'
bootm - boot application image from memory
bootp - boot image via network using BOOTP/TFTP protocol
cmp - memory compare
cp - memory copy
crc32 - checksum calculation
decjpg - jpgd - decode jpeg picture.
ext2load- load binary file from a Ext2 filesystem
ext2ls - list files in a directory (default /)
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls - list files in a directory (default /)
fload - fload - load binary file from a filesystem image for system boot
flwrite - SPI flash sub-system
getinfo - print hardware information
go - start application at address 'addr'
help - print command description/usage
lload - lload - load logo file
loadb - load binary file over serial line (kermit mode)
loady - load binary file over serial line (ymodem mode)
logoload- logoload - load binary file from a filesystem image for system boot
loop - infinite loop on address range
md - memory display
mii - MII utility commands
mm - memory modify (auto-incrementing address)
mtest - simple RAM read/write test
mw - memory write (fill)
nm - memory modify (constant address)
ping - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
rarpboot- boot image via network using RARP/TFTP protocol
reset - Perform RESET of the CPU
run - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv - set environment variables
setvobg - setvobg - set vo backgroud color.
- setvobg [dev color]
sf - SPI flash sub-system
squashfsload- fsload - load binary file from a filesystem image
startgx - startgx - open graphics layer.
- startgx [layer addr stride x y w h]
startvo - startvo - open interface of vo device.
- startvo [dev type sync]
stopgx - stopgx - close graphics layer.
- stopgx [layer]
stopvo - stopvo - close interface of vo device.
- stopvo [dev]
tftp - tftp - download or upload image via network using TFTP protocol
usb - USB sub-system
usbboot - boot from USB device
version - print monitor version
hisilicon #
Код: Выделить всё
hisilicon # printenv
bootcmd=sf probe 0;sf read 84000000 770000 10000;logoload 84000000;decjpg;sf read 82000000 30000 400000;squashfsload 82000000;bootm 0x82000000
bootdelay=1
baudrate=115200
bootfile="uImage"
da=mw.b 0x82000000 ff 1000000;tftp 0x82000000 u-boot.bin.img;sf probe 0;flwrite
du=mw.b 0x82000000 ff 1000000;tftp 0x82000000 user-x.cramfs.img;sf probe 0;flwrite
dr=mw.b 0x82000000 ff 1000000;tftp 0x82000000 romfs-x.cramfs.img;sf probe 0;flwrite
dw=mw.b 0x82000000 ff 1000000;tftp 0x82000000 web-x.cramfs.img;sf probe 0;flwrite
dl=mw.b 0x82000000 ff 1000000;tftp 0x82000000 logo-x.cramfs.img;sf probe 0;flwrite
dc=mw.b 0x82000000 ff 1000000;tftp 0x82000000 custom-x.cramfs.img;sf probe 0;flwrite
up=mw.b 0x82000000 ff 1000000;tftp 0x82000000 update.img;sf probe 0;flwrite
tk=mw.b 0x82000000 ff 1000000;tftp 0x82000000 zImage.img; bootm 0x82000000
dd=mw.b 0x82000000 ff 1000000;tftp 0x82000000 mtd-x.jffs2.img;sf probe 0;flwrite
ethaddr=00:0b:3f:00:00:01
appVideoStandard=PAL
appSystemLanguage=English
filesize=6040
fileaddr=82000000
gatewayip=192.168.0.1
netmask=255.255.255.0
ipaddr=192.168.1.10
serverip=192.168.1.120
restore=1
bootargs=mem=48M console=ttyAMA0,115200 root=1f01 rootfstype=squashfs
stdin=serial
stdout=serial
stderr=serial
verify=n
ver=U-Boot 2010.06-svn198 (Dec 08 2014 - 09:53:48)
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 15:26
saffers
продублирую еще сюда свои соображения.
Код: Выделить всё
bootcmd=sf probe 0;sf read 84000000 770000 10000;logoload 84000000;decjpg;sf read 82000000 30000 400000;squashfsload 82000000;bootm 0x82000000
sf read 82000000 30000 400000в память загружается область начиная с 0х30000 размером 0х400000
хотя в области с 220000 по 5d0000 лежит область модуль user-x
а в модуле user-x лежит Sofia.tar.lzma (~2330Kb), modules.tar.lzma (~830Kb)
и получается, что не весь блок загружается в память.
Почему не мапится блок размером 0х740000 (30000 +740000 = 770000), как раз до logo? Или это не принципиально, главное, чтобы romfs загрузить...
Кажется, что правильным был бы вариант:
sf read 82000000 30000 740000
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 16:10
iTuneDVR
Вообщем-то, как и было озвучено, либо замена переменных окружения на оригинал, который я выдал выше, либо затереть ту область
начиная с 0x20000 до 0x2FFFF и восстановить по модульно с той первоначальной прошивке, про которую ты писал.
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 17:47
saffers
Код: Выделить всё
hisilicon # printenv
bootcmd=sf probe 0;sf read 84000000 770000 10000;logoload 84000000;decjpg;sf read 82000000 30000 400000;squashfsload 82000000;bootm 0x82000000
bootdelay=1
baudrate=115200
bootfile="uImage"
da=mw.b 0x82000000 ff 1000000;tftp 0x82000000 u-boot.bin.img;sf probe 0;flwrite
du=mw.b 0x82000000 ff 1000000;tftp 0x82000000 user-x.cramfs.img;sf probe 0;flwrite
dr=mw.b 0x82000000 ff 1000000;tftp 0x82000000 romfs-x.cramfs.img;sf probe 0;flwrite
dw=mw.b 0x82000000 ff 1000000;tftp 0x82000000 web-x.cramfs.img;sf probe 0;flwrite
dl=mw.b 0x82000000 ff 1000000;tftp 0x82000000 logo-x.cramfs.img;sf probe 0;flwrite
dc=mw.b 0x82000000 ff 1000000;tftp 0x82000000 custom-x.cramfs.img;sf probe 0;flwrite
up=mw.b 0x82000000 ff 1000000;tftp 0x82000000 update.img;sf probe 0;flwrite
tk=mw.b 0x82000000 ff 1000000;tftp 0x82000000 zImage.img; bootm 0x82000000
dd=mw.b 0x82000000 ff 1000000;tftp 0x82000000 mtd-x.jffs2.img;sf probe 0;flwrite
ethaddr=00:0b:3f:00:00:01
appVideoStandard=PAL
appSystemLanguage=English
filesize=6040
fileaddr=82000000
gatewayip=192.168.0.1
netmask=255.255.255.0
ipaddr=192.168.1.10
serverip=192.168.1.120
restore=1
bootargs=mem=104M console=ttyAMA0,115200 root=1f01 rootfstype=squashfs
mtdparts=hi_sfc:192K(boot),1984K(romfs),3776K(usr),1664K(custom),64K(logo),512K(mtd)
stdin=serial
stdout=serial
stderr=serial
verify=n
ver=U-Boot 2010.06-svn198 (Dec 08 2014 - 09:53:48)
восстановил параметры bootargs и mtdparts, но пока без толку... сравнивал в экселе строчки.
это можно считать восстановлением?
не грузится девайс дальше логотипа.
вы, как получили дефолтные значения Environment, их в дампе не видел?
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 17:56
saffers
прошивку ставить по-модульно лучше той версии, которая у меня работала?
SimpGeneral_General_NBD7804T-F_V4.02.R11.20150623 (1).bin
хотя я доподлинно не знаю, код этой прошивки был залит или отличной, но дата совпадает 20150623, как выдавал NVR
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 18:12
iTuneDVR
saffers писал(а):Стояла версия V4.02.R11.00031118.12001.130000 от 2015-06-23.
Я отталкиваюсь от модели оборудования указанной тобой вначале. №118
По ней и предложил название прошивки в найденной мной прошивки в своём архиве.
Модель не новая и тогда еще в регистраторах были отдельные крипточипы, и во флеше отсутствует шифрованны блок.
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 18:24
iTuneDVR
saffers писал(а):восстановил параметры bootargs и mtdparts, но пока без толку... сравнивал в экселе строчки.
Сравнивают обычно построчно и визуаотно в данном случае. Порядок следования строк не так важен, но ....
saffers писал(а):это можно считать восстановлением?
не грузится девайс дальше логотипа.
Не грузится он может по разным причинам, далеко не связанным с этим образом.
Сама предистория непонятна, зачем?
Напрямую прошивку не обновить, только если подправив немного...
Зачем???
saffers писал(а):вы, как получили дефолтные значения Environment, их в дампе не видел?
Разобрал и получил.

Предлагаю зачистить переменные окружения и перезагрузить. Они должны восстановиться.
С остальным надо думать.
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 18:43
saffers
сейчас слил еще раз всю память флеша, там у меня еще сейчас стоит V4.02.R11.00031118.12001.130000 от 2015-06-23
winhex'ом посчитал хэш-сумму блоков rom-fs,user,custom в отдельности c данными из модулей прошивки.
Все совпадает, т.е. заливается и сливается без повреждений. Думал в процессе заливки модулей, может что-то портится из-за скрытых проблем в чипе.
По вашему совету буду еще пробовать стереть переменные окружения.
А в каком формате хранится загрузчик, тоже интересно стало его разобрать?
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 18:57
iTuneDVR
Может быть немного торопишься и надо просто дождаться.
Сотри переменные при восстановленном всём остальном и подожди и наблюдай, даже если сам пойдёт в перезагрузку.
Конечно, у тебя зачищен раздел с данными, но ...
Re: прошу помощи в восстановлении XM NBD7804T-F
Добавлено: 08 апр 2017, 19:21
saffers
Ура!!!!!!! ЗАРАБОТАЛО!!!!
значения из Environment теперь такие:
Код: Выделить всё
hisilicon #
hisilicon # printenv
bootcmd=sf probe 0;sf read 84000000 770000 10000;logoload 84000000;decjpg;sf read 82000000 30000 400000;squashfsload 82000000;bootm 0x82000000
bootdelay=1
baudrate=115200
ethaddr=00:0b:3f:00:00:01
ipaddr=192.168.1.10
serverip=192.168.1.1
netmask=255.255.255.0
bootfile="uImage"
da=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 u-boot.bin.img;sf probe 0;flwrite
du=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 user-x.cramfs.img;sf probe 0;flwrite
dr=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 romfs-x.cramfs.img;sf probe 0;flwrite
dw=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 web-x.cramfs.img;sf probe 0;flwrite
dl=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 logo-x.cramfs.img;sf probe 0;flwrite
dc=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 custom-x.cramfs.img;sf probe 0;flwrite
up=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 update.img;sf probe 0;flwrite
tk=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 zImage.img; bootm 0x82000000
dd=mw.b 0x82000000 ff 0x1000000;tftp 0x82000000 mtd-x.jffs2.img;sf probe 0;flwrite
bootargs=mem=82M console=ttyAMA0,115200 root=1f01 rootfstype=squashfs mtdparts=hi_sfc:192K(boot),1984K(romfs),3776K(usr),1664K(custom),64K(logo),512K(mtd)
appSystemLanguage=SimpChinese
appVideoStandard=PAL
stdin=serial
stdout=serial
stderr=serial
verify=n
ver=U-Boot 2010.06-svn198 (Dec 08 2014 - 09:53:48)
mac после загрузки Линукса изменяется, не такой, какой в U-boot.
Огромное СПАСИБО!
iTuneDVR - Вы настоящий эксперт!