wiki/ru/help-uboot.md

49 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

Помощь: U-boot
------------
### Переменные окружения
Если при попытке сохранения переменной вы получаете ошибку `Too many args`,
попробуйте повторить операцию из среды линукс, заменив `setenv` на `fw_setenv`.
__U-boot console:__
```
hisilicon # setenv uk 'mw.b 0x82000000 ff 1000000; tftp 0x82000000 uImage.${soc}; sf probe 0; sf erase 0x50000 0x200000; sf write 0x82000000 0x50000 ${filesize}'
** Too many args (max. 16) **
```
__OpenIPC Linux:__
```
root@openipc-hi3518ev100:~# fw_setenv uk 'mw.b 0x82000000 ff 1000000; tftp 0x82000000 uImage.${soc}; sf probe 0; sf erase 0x50000 0x200000; sf write 0x82000000 0x50000 ${filesize}'
root@openipc-hi3518ev100:~#
```
### Сохранение заводской прошивки без tftp.
В программе-терминале, используемой для подключения к порту UART, установите
сохранение лога сессии. После чего в консоли загрузчика запустите команду чтения
данных из памяти длиной в объем флэш-памяти начиная с нулевого адреса.
Используйте шестнадцатеричное представление для адресов памяти. Так 0 в
шестнадцатеричной записи выглядит как 0x0, 8 мегабайтов (8 * 1024 * 1024 =
8,388,608 байтов) выглядят как 0x800000, 16 мегабайтов (16 * 1024 * 1024 =
или 16,777,216 байтов) - как 0x1000000.
Чтение 8МБ флэш-памяти:
```
md.b 0x0 0x800000
```
Чтение 16МБ флэш-памяти:
```
md.b 0x0 0x1000000
```
Будьте готовы к тому, что процесс передачи данных через серийное подключение
займет несколько часов. Зато в результате у вас будет полная копия оригинальной
прошивки, которую можно конвертировать в бинарный файл с помощью программы
[binwalk](https://github.com/ReFirmLabs/binwalk) и использовать для дальнейшего
изучения или для восстановления камеры в её оригинальный вид.