Ports/aarch64/RaspberryPiCM4: различия между версиями
(Новая страница: «Category:ARM Category:AArch64 Raspberry Pi Compute Module 4 - вычислительный модуль, представляющий собой собо…») |
|||
(не показано 6 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
[[Category:ARM]] [[Category:AArch64]] | [[Category:ARM]] [[Category:AArch64]] | ||
Raspberry Pi Compute Module 4 | Raspberry Pi Compute Module 4 — вычислительный модуль, представляющий собой собой портативный вариант модели Raspberry Pi 4, размером всего 55 × 40 мм <ref>https://www.opennet.ru/opennews/art.shtml?num=53919</ref>. Статья содержит инструкции по прошивке модуля (EEPROM и eMMC), установленного в плату ввода-вывода Raspberry Pi Compute Module 4 and IO Board <ref>https://www.raspberrypi.org/products/compute-module-4/</ref>. | ||
== Подготовка == | == Подготовка == | ||
Установить пакет raspberrypi-usbboot на компьютер, с которого будет производиться прошивка модуля. | Установить пакет {{pkg|raspberrypi-usbboot}} на компьютер, с которого будет производиться прошивка модуля. | ||
== Обновление загрузчика в EEPROM == | == Обновление загрузчика в EEPROM == | ||
0. Подготовить [[#Модификация_прошивки_загрузчика_EEPROM|прошивку]] | |||
1. Установить перемычки на плате ввода-вывода: J2 "disable eMMC Boot" и "disable writing to EEPROM" | 1. Установить перемычки на плате ввода-вывода: J2 "disable eMMC Boot" и "disable writing to EEPROM" | ||
Строка 74: | Строка 76: | ||
6. Записать образ на /dev/sdX или самостоятельно развернуть rootfs | 6. Записать образ на /dev/sdX или самостоятельно развернуть rootfs | ||
7. Смонтировать FAT32 | 7. Смонтировать FAT32 раздел, добавить в config.txt строку: | ||
<source lang="bash">dtoverlay=dwc2,dr_mode=host</source> | <source lang="bash">dtoverlay=dwc2,dr_mode=host</source> | ||
Строка 91: | Строка 93: | ||
1. Получаем прошивки для вычислительного модуля и переходим к ним одной командой: | 1. Получаем прошивки для вычислительного модуля и переходим к ним одной командой: | ||
<source lang="bash"> | <source lang="bash">git clone --depth 1 https://github.com/raspberrypi/usbboot && | ||
cd usbboot/recovery</source> | |||
cd usbboot | |||
2. В каталоге будет прошивка pieeprom.bin | |||
3. При необходимости изменяем порядок загрузки в файле boot.conf | 3. При необходимости изменяем порядок загрузки в файле boot.conf <ref>https://www.raspberrypi.com/documentation/computers/compute-module.html#cm4bootloader</ref>. | ||
* Для сетевой загрузки прописываем: | * Для сетевой загрузки прописываем: | ||
<source>BOOT_ORDER=0xf2</source> | <source lang="text">BOOT_ORDER=0xf2</source> | ||
* Для загрузки с SD/EMMC: | * Для загрузки с SD/EMMC: | ||
<source>BOOT_ORDER=0xf1</source> | <source lang="text">BOOT_ORDER=0xf1</source> | ||
* Для загрузки сначала с USB, а в случае неудачи через eMMC: | * Для загрузки сначала с USB, а в случае неудачи через eMMC: | ||
<source>BOOT_ORDER= | <source lang="text">BOOT_ORDER=0xf51</source> | ||
4. Готовим прошивку, если производили какие-то изменения на предыдущих шагах: | 4. Готовим прошивку, если производили какие-то изменения на предыдущих шагах: | ||
Строка 126: | Строка 119: | ||
О: Убедитесь, что отключили кабель micro-USB от платы ввода-вывода | О: Убедитесь, что отключили кабель micro-USB от платы ввода-вывода | ||
и прописали в config.txt строку: | и прописали в config.txt строку: | ||
<source lang=" | <source lang="text">dtoverlay=dwc2,dr_mode=host</source> | ||
В: Не работает загрузка с usb 2.0 | В: Не работает загрузка с usb 2.0 |
Текущая версия от 07:59, 7 ноября 2022
Raspberry Pi Compute Module 4 — вычислительный модуль, представляющий собой собой портативный вариант модели Raspberry Pi 4, размером всего 55 × 40 мм [1]. Статья содержит инструкции по прошивке модуля (EEPROM и eMMC), установленного в плату ввода-вывода Raspberry Pi Compute Module 4 and IO Board [2].
Подготовка
Установить пакет raspberrypi-usbboot на компьютер, с которого будет производиться прошивка модуля.
Обновление загрузчика в EEPROM
0. Подготовить прошивку
1. Установить перемычки на плате ввода-вывода: J2 "disable eMMC Boot" и "disable writing to EEPROM"
2. Подключить к компьютеру при помощи кабеля micro-USB (USB slave на плате)
3. Подать питание на плату ввода-вывода
4. Запустить на компьютере следующую команду от root:
# rpiboot -d путь/до/recovery
Loading: путь/до/recovery/bootcode4.bin
Waiting for BCM2835/6/7/2711...
Loading: путь/до/recovery/bootcode4.bin
Sending bootcode.bin
Successful read 4 bytes
Waiting for BCM2835/6/7/2711...
Loading: путь/до/recovery/bootcode4.bin
Second stage boot server
Loading: путь/до/recovery/config.txt
File read: config.txt
Loading: путь/до/recovery/pieeprom.bin
Loading: путь/до/recovery/pieeprom.bin
Loading: путь/до/recovery/pieeprom.sig
File read: pieeprom.sig
Loading: путь/до/recovery/pieeprom.bin
File read: pieeprom.bin
Second stage boot server done
5. Дождаться завершения прошивки (около 10 секунд, на дисплее загорится зелёная картинка, если успешно)
6. Отключить питание
7. Удалить перемычки, отключить usb-кабель от компьютера
8. Подать питание и пробовать загружаться
Запись на eMMC
1. Установить перемычку на плате ввода-вывода: J2 "disable eMMC Boot"
2. Подключить к компьютеру при помощи кабеля micro-USB (USB slave на плате)
3. Подать питание на плату ввода-вывода
4. Запустить на компьютере:
# rpiboot
Waiting for BCM2835/6/7/2711...
Loading embedded: bootcode4.bin
Sending bootcode.bin
Successful read 4 bytes
Waiting for BCM2835/6/7/2711...
Loading embedded: bootcode4.bin
Second stage boot server
Loading embedded: start4.elf
File read: start4.elf
Second stage boot server done
5. На компьютере появится новое устройство /dev/sdX
6. Записать образ на /dev/sdX или самостоятельно развернуть rootfs
7. Смонтировать FAT32 раздел, добавить в config.txt строку:
dtoverlay=dwc2,dr_mode=host
Если этого не сделать, не будут работать порты USB 2.0. Тем не менее при загрузке с USB, а не eMMC, этого не требуется делать.
8. Отмонтировать разделы и отключить питание платы ввода-вывода
9. Удалить перемычку, отключить usb-кабель от компьютера
10. Подать питание и пробовать загружаться
Модификация прошивки загрузчика EEPROM
1. Получаем прошивки для вычислительного модуля и переходим к ним одной командой:
git clone --depth 1 https://github.com/raspberrypi/usbboot &&
cd usbboot/recovery
2. В каталоге будет прошивка pieeprom.bin
3. При необходимости изменяем порядок загрузки в файле boot.conf [3].
- Для сетевой загрузки прописываем:
BOOT_ORDER=0xf2
- Для загрузки с SD/EMMC:
BOOT_ORDER=0xf1
- Для загрузки сначала с USB, а в случае неудачи через eMMC:
BOOT_ORDER=0xf51
4. Готовим прошивку, если производили какие-то изменения на предыдущих шагах:
./update-pieeprom.sh
5. Выполняем Обновление загрузчика в EEPROM
FAQ
В: Не работает usb 2.0 при загрузке с eMMC
О: Убедитесь, что отключили кабель micro-USB от платы ввода-вывода и прописали в config.txt строку:
dtoverlay=dwc2,dr_mode=host
В: Не работает загрузка с usb 2.0
О: Убедитесь, что отключили кабель micro-USB от платы ввода-вывода. Если не помогло, то следует изменить порядок загрузки (см. Модификация прошивки загрузчика EEPROM)