Мы рассморели, как собрать образ для S9 и образ для s9k и пр.
В данной статье мы разберёмся, как собрать образ для Antminer L3+. Особенность контрольноый платы этого асика в том, что процессор на них уже не Xilinx Zynq, а Sitara™ AM3352
Контент доступен только участникам форума
Итак, приступим. Первым делом поставим необходимые библиотеки и их зависимости.
В терминале вводим:
Контент доступен только участникам форума
После установки библиотек на рабочем столе создадим каталог «CreateFS_L3»
Не забываем подставлять своё имя пользователя, вместо xilinx.
Контент доступен только участникам форума
Далее создадим каталог:
Контент доступен только участникам форума
Перейдем в наш каталог:
Контент доступен только участникам форума
В каталоге «CreateFS_L3» создадим 3 рабочих каталога: Target, Firmware и Result:
Контент доступен только участникам форума
В каталог «Target» мы будем помещать исходный образ файловой системы «initramfs.bin.SD», получить его можно из файла прошивки, например .img, открыв её любым архиватором. Сам образ хранится в каталоге «NAND»
В каталог «Firmware» будет разворачиваться файловая система из образа «initramfs.bin.SD», т.е. там мы увидим корень файловой системы, каталоги и файлы прошивки, которые в дальнейшем будем править.
В каталог «Result» будет помещаться образ «initramfs.bin.SD» после его компиляции. Этот образ будет содержать наши изменения. Этот образ мы в дальнейшем будем помещать в файл прошивки для дальнейшей установки уже на контрольную плату.
Теперь переходим в каталог «CreateFS_L3» на рабочем столе уже из под графического интерфейса.
По аналогии прошлой статьи создадим 3 скрипта, позволяющих работать с образом «initramfs.bin.SD»
Первый скрипт будет разворачивать образ «initramfs.bin.SD» в каталог «Firmware»
В каталоге «CreateFS_L3» создадим пустой файл и наполним его содержимым:
Контент доступен только участникам форума
Далее «Сохранить как...» и называем его «mount» (Формат не обязателен)
Теперь создадим скрипт, позволяющий размонтировать образ «initramfs.bin.SD» из каталога «Firmware»
Находясь в каталоге «CreateFS_L3» создадим текстовой файл и наполним его следующими строками:
Контент доступен только участникам форума
Далее «Сохранить как...» и называем его «umount» (Формат не обязателен)
Теперь создадим самый главный скрипт, позволяющий компилировать содержимое каталога «Firmware» в отдельный образ, который будет работать на контрольной плате после прошивки.
Находясь в каталоге «CreateFS_L3» создадим текстовой файл и наполним его следующими строками:
Контент доступен только участникам форума
Далее «Сохранить как...» и называем его «make-rootfs» (Формат не обязателен)
Прописываем права на запуск наших скриптов:
Контент доступен только участникам форума
Наш туллкит для работы с образами «.bin.SD» готов, можно приступать к практической части.
Контент доступен только участникам форума
Открываем архиватором файл с прошивкой от Antminer L3+, заходим там в каталог «NAND» и извлекаем файл «initramfs.bin.SD». Этот файл помещаем в каталог «Target».
Контент доступен только участникам форума
Контент доступен только участникам форума
Теперь открываем терминал и переходим в рабочий каталог «CreateFS_L3»:
Не забываем подставлять своё имя пользователя, вместо xilinx.
Контент доступен только участникам форума
Запускаем монтирование образа «initramfs.bin.SD»:
Контент доступен только участникам форума
Вводим пароль от пользователя и наблюдаем, как наш образ разворачивается в каталог «Firmware»
Теперь перейдя в этот каталог мы наблюдаем все папки и файлы, находящиеся в прошивке.
Контент доступен только участникам форума
Далее мы совершаем любые изменения с файлами на наше усмотрение, в зависимости от нашей цели редактирования прошивки. К примеру, мне захотелось изменить логотип стоковой прошивки на свой.
Для этого я перехожу в каталог «www\pages\images\» и наблюдаю там файл изображения «antminer_logo.png».
Контент доступен только участникам форума
Открываю этот файл любым редактором изображений и редактирую его на свой вкус.
Далее сохраняю этот файл, не меняя его названия и формат.
Контент доступен только участникам форума
После проделанных изменений я собираюсь собрать развёрнутый образ обратно в файл «initramfs.bin.SD», для этого открываю терминал и перехожу в рабочий каталог «CreateFS_L3»:
Не забываем подставлять своё имя пользователя, вместо xilinx.
Контент доступен только участникам форума
И запускаю процесс компиляции:
Контент доступен только участникам форума
На вопрос do you wish to overwrite (y or n)? нажимаем y и Enter
Контент доступен только участникам форума
После компиляции в каталоге «Result» я наблюдаю свежеиспеченный файл «initramfs.bin.SD»
Контент доступен только участникам форума
Теперь, как вы догадались, этот файл следует поместить в каталог «NAND» в файле прошивки и прошить этим файлом нашу контрольную плату.
После прошивки и запуска контрольной платы, мы переходим на вэб-морду и наблюдаем уже наш логотип, вместо стокового. Это говорит о том, что мне удалось правильно собрать образ с моими изменениями.
Осталось размонтировать образ из системы.
Вводим команду:
Контент доступен только участникам форума
. Перейдя в каталог «Firmware», мы заметим, что тут стало пусто.
Контент доступен только участникам форума
Вот таким образом можно собирать свои прошивки с любыми вашими правками, дополнениями и изменениями бесконечное количество раз. Материалов по данной специфики в интернете не найти. Все эти действия добывались опытным путём.
Рад, если помог разобраться и дал ответы на все ваши вопросы по этой теме!
Материал подготовил: @Vinogradov
Копирование и распространение с разрешения автора.