Хотел сначала портировать ARM'ный Arch linux на свою относительно старенькую Repka pi 3 VER 1.2, ибо сам пользуюсь арчом, Ubuntu уже давным давно должна быть у всех на помойке, а на сайте очень кстати со временем появился "Загрузчик Repka OS", с которым можно просто портировать свой дистрибутив в отличие от таких бессмертных мира сего. Скачал, запустил (исправил микро-косяк в Makefile (моя issue по этому на гитфлик), т.к. штука собирается в докере (вот, вроде, зависима сборка от пакетов Ubuntu - взяли и в докер запихнули - респект парням)).
1. Собираю загрузчик
2. Через fdisk создаю два раздела на 512М и второй - оставшееся, делаю раздел boot fat32 и root ext4 (btrfs)
У меня SD-карта, это /dev/mmcblk0
3. Монтирую и копирую загрузчик
потом ещё много рутины
fstab тоже редачу:
сделал даже extlinux.conf в `[boot-раздел]/extlinux/` с таким содержимым
Я очень много тыканий (то есть очень-очень много) пропустил, это уже как сжатый туториал получился...
---
Благо имеется cp2102, тыкаю эти ваши 3.3V, смотрю через UART `screen /dev/ttyUSB0 115200`
Система то
1. крашится
я это исправляю,
2. то просто падает в вечный цикл перезапусков в разное непредсказуемое время, мигая на секунду зелёным power-led, иногда мигая синими по два раза, иногда просто три перезагрузки подряд с питанием (это когда ещё при запуске Ethernet 3 раза мигает своими светодиодами - короче реально перезагрузка)), то иногда вообще выключается и не подаёт признаков жизни (ну естественно вытаскиваю провод, вставляю - всё по новой).
Ручной режим с подключенными оверлеями не помогают - систему проверяю, вроде всё правильно стоит.
Выкидываю на это два дня, посылаю всё к херам и такой "ублюнтить, так ублюнтить" - качаю ваш несчастный Repka OS aka. "Ubuntu" (я любя, не подумайте - просто в моём контексте я делал это уже с ненавистью и кипящими штанами
).
Делаю одну единственную детскую ерунду, как и подобает:
нихрена. То же поведение. Вспоминаю, что 1.5 года назад писал диплом - сервис для миникампухтера Repka pi3, и была такая же проблема (тогда ещё Ubuntu использовал), а когда поставил эту уродскую balena Etcher на винду, то она волшебным и неизвестным мне образом правильно всё сделала, SD вставил и запустил. Вспомнив это, переключаюсь на винду, качаю balen'у, делаю с вашим скачанным образом - никакой магии не происходит - то же самое поведение, ядро до 8 пункта доходит и в сброс-перезагрузку, где опять творит какую-то херню, всё короче и короче, и вообще либо зависает, либо вырубает питание.
Питание подключено от адаптеров на 15Ватт (5V 3A, два разных на такой вывод пробовал).
В общем у меня подозрения, помимо всех остальных, что на мою версию платы забили огромного болта и подходящие ему .dtb выкинули на помойку.
Сам мини-компьютер, пока не пользовался, был оставлен в исправном виде (с исправными картой и операционкой) в личном сухом герметичном контейнере.
Чё делать не знаю, помогите





КАК Я ДЕЛАЛ
смотрите сразу след. оглавление "ПРОБЛЕМА", если не особо интересно1. Собираю загрузчик
Bash:
git clone https://gitflic.ru/project/npo_rbs/repka-os_boot-loader.git
cd repka-os_boot-loader
git submodule update --init --recursive
make REPKA_MODEL=pi3 build-loader
2. Через fdisk создаю два раздела на 512М и второй - оставшееся, делаю раздел boot fat32 и root ext4 (btrfs)
У меня SD-карта, это /dev/mmcblk0
Bash:
sudo mkfs.vfat -F 32 -n BOOT /dev/mmcblk0p1
Bash:
sudo mkfs.ext4 -L rootfs /dev/mmcblk0p2
3. Монтирую и копирую загрузчик
Bash:
sudo dd if=src-pi3/spl/u-boot-sunxi-with-spl.bin of=/dev/mmcblk0p1 bs=1024 seek=8 conv=notrunc
потом ещё много рутины
Bash:
sudo cp src-pi3/repka-pi.dtb mnt/boot/ #копирую .dtb,
sudo cp -r src-pi3/overlays mnt/boot/ #...оверлеи
sudo bsdtar -xpf ArchLinuxARM-aarch64-latest.tar.gz -C mnt/root #распаковываю файловую систему арча на SD-карту
sudo mv mnt/root/boot/* mnt/boot/ #перемещаю ядро линуха
sudo mkdir -p mnt/boot/dtbs/allwinner #остальные .dtb, хоть и не понятно, зачем, если только один нужен, бл....
sudo cp mnt/boot/repka-pi.dtb mnt/boot/dtbs/allwinner/sun50i-h5-repka-pi3.dtb #выношу нужный единственный как раз
fstab тоже редачу:
Код:
LABEL=BOOT /boot vfat defaults 0 0
LABEL=rootfs / ext4 defaults 0 1
сделал даже extlinux.conf в `[boot-раздел]/extlinux/` с таким содержимым
Код:
DEFAULT arch
MENU TITLE Boot Menu
PROMPT 0
TIMEOUT 50
LABEL arch
MENU LABEL Arch Linux ARM
LINUX /Image
INITRD /initramfs-linux.img
FDT /dtbs/allwinner/sun50i-h5-repka-pi3.dtb
APPEND root=LABEL=rootfs rw console=ttyS0,115200 console=tty0
Я очень много тыканий (то есть очень-очень много) пропустил, это уже как сжатый туториал получился...
---
ПРОБЛЕМА
В итоге запускаю - моник не успевает что-либо отобразить из-за каких-то глюков и вечных перезапусков.Благо имеется cp2102, тыкаю эти ваши 3.3V, смотрю через UART `screen /dev/ttyUSB0 115200`
Система то
1. крашится
Bash:
...
[ 3.490163] mount_root+0x170/0x190
[ 3.493672] prepare_namespace+0x1d4/0x238
[ 3.497790] kernel_init_freeable+0x2a4/0x2c4
[ 3.502168] kernel_init+0x20/0x148
[ 3.505679] ret_from_fork+0x10/0x20
[ 3.509279] SMP: stopping secondary CPUs
[ 3.513223] Kernel Offset: disabled
[ 3.516721] CPU features: 0x000000,00100000,40004000,0400421b
[ 3.522480] Memory Limit: none
[ 3.525554] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]---
я это исправляю,
2. то просто падает в вечный цикл перезапусков в разное непредсказуемое время, мигая на секунду зелёным power-led, иногда мигая синими по два раза, иногда просто три перезагрузки подряд с питанием (это когда ещё при запуске Ethernet 3 раза мигает своими светодиодами - короче реально перезагрузка)), то иногда вообще выключается и не подаёт признаков жизни (ну естественно вытаскиваю провод, вставляю - всё по новой).
Ручной режим с подключенными оверлеями не помогают - систему проверяю, вроде всё правильно стоит.
Выкидываю на это два дня, посылаю всё к херам и такой "ублюнтить, так ублюнтить" - качаю ваш несчастный Repka OS aka. "Ubuntu" (я любя, не подумайте - просто в моём контексте я делал это уже с ненавистью и кипящими штанами
Делаю одну единственную детскую ерунду, как и подобает:
Bash:
sudo dd if=~/Downloads/предварительно_unpacked_ваш_этот_zip_несчастный/arm64_ubuntu_20.04.6_desktop_09.08.23_1.2GHz.img of=/dev/mmcblk0 bs=1M status=progress iflag=direct oflag=direct
нихрена. То же поведение. Вспоминаю, что 1.5 года назад писал диплом - сервис для миникампухтера Repka pi3, и была такая же проблема (тогда ещё Ubuntu использовал), а когда поставил эту уродскую balena Etcher на винду, то она волшебным и неизвестным мне образом правильно всё сделала, SD вставил и запустил. Вспомнив это, переключаюсь на винду, качаю balen'у, делаю с вашим скачанным образом - никакой магии не происходит - то же самое поведение, ядро до 8 пункта доходит и в сброс-перезагрузку, где опять творит какую-то херню, всё короче и короче, и вообще либо зависает, либо вырубает питание.
Питание подключено от адаптеров на 15Ватт (5V 3A, два разных на такой вывод пробовал).
В общем у меня подозрения, помимо всех остальных, что на мою версию платы забили огромного болта и подходящие ему .dtb выкинули на помойку.
Сам мини-компьютер, пока не пользовался, был оставлен в исправном виде (с исправными картой и операционкой) в личном сухом герметичном контейнере.
Чё делать не знаю, помогите