Помощь: 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) и использовать для дальнейшего изучения или для восстановления камеры в её оригинальный вид. ### Обход запароленного загрузчика. Смена загрузчика -- рискованная операция. Уж слишком высоки шансы превратить камеру в пресс-папье, если что-то пойдёт не так. Поэтому прежде чем прошивать новый загрузчик надо взвесить все риски и бенефиты. В большинстве случаев оригинальный загрузчик плюс новое ядро и новая операционная система -- вполне рабочий вариант. Но бывают исключения. Последнее время всё чаще встречаются камеры, на которых доступ в консоль загрузчика закрыт паролем. То есть даже если вы подключитесь к камере через порт UART, всё, что вам будет доступно после прерывания стандартного цикла загрузки -- это приглашение ввести пароль. В таком случае относительно безопасным решением будет даунгрейд родной прошивки до версии, где ещё не требовался пароль. Например, у камер Xiongmai пароль в загрузчике появился где-то в районе июля 2021 года, следовательно вам понадобится файл с фирменной прошивкой от вашей камеры с более ранней датой. После успешного даунгрейда на беспарольный загрузчик вы сможете установить прошивку OpenIPC уже стандартными средствами.