Автор Тема: Альт на rk3399  (Прочитано 40906 раз)

Оффлайн Merblud

  • Давно тут
  • **
  • Сообщений: 460
Re: Альт на rk3399
« Ответ #60 : 18.11.2020 22:29:18 »
2 Антон Мидюков

Я, вероятно, отстал от жизни. Я так понимаю, что alt-rootfs-installer больше не поддерживается (не развивается). Чем сейчас можно записывать карточку? Образ от 20201111 у меня, видимо, записался без своего загрузчика. alt-rootfs-installer не нашел какой-то кусок, вроде бы spl (точно не запомнил).

Чтобы грузился u-boot с SD-карты, а не из SPI, нужно зажать кнопку boot при включении на 5 секунд. Я зажимал кнопку boot, и нажимал кнопку reset.

Это как-бы не новость. Но раньше такого не было. ЕМНИП до какого-то момента стандартным для rockchip был поиск загрузчика сначала на карточке, потом во встроенной памяти.
У меня все осложняется еще тем, что кнопку boot нужно вовремя отпустить, иначе загрузчик зацикливается.

По итогу загрузиться смогло только ядро mp.

Не понял. Загрузчик не может другое грузить, или само ядро не стартует?

В /boot/extlinux/extlinux.conf нужно прописать вместо tty1 ttyS2,115200.
Встроенный u-boot общается на скорости 1500000. Так что отличить с каким u-boot идёт загрузка легко.

Для чего такие чудеса. Получается, что чтобы посмотреть, что пишет загрузчик нужно запустить какой-нибудь minicom на 1500000, а для ядра на 115200. Непонятно.

Надо разобраться как записать u-boot в SPI, тогда не нужно будет никаких отступов на SD-карте в 16 МБ под загрузчик.

Имеете в виду, что загрузчик на SD-карте вообще будет не нужен?

Что касается поддержки графики u-boot'ом. Альтовский u-boot графику поддерживает, вот только usb не работает.

И как лицезреть эту ляпоту? Это относится к u-boot от версии 20201111 регулярки? Как отдельно обновить этот u-boot на SD-карте?

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Альт на rk3399
« Ответ #61 : 19.11.2020 05:50:47 »
Я, вероятно, отстал от жизни. Я так понимаю, что alt-rootfs-installer больше не поддерживается (не развивается). Чем сейчас можно записывать карточку? Образ от 20201111 у меня, видимо, записался без своего загрузчика. alt-rootfs-installer не нашел какой-то кусок, вроде бы spl (точно не запомнил).

Поддерживается и развивается. Возьмите, пока, у меня из git:
http://git.altlinux.org/people/antohami/packages/?p=alt-rootfs-installer.git;a=shortlog;h=refs/heads/devel

Обновился u-boot, там файлы переименовались, а я это вовремя не заметил. До 1 декабря обязательно будет новый релиз.

Не понял. Загрузчик не может другое грузить, или само ядро не стартует?

Само ядро. У ядер версии 5.4 (std-def и lts) происходит сегфолт при загрузке initrd. А un-def 5.9 повисло сразу, до  initrd дело не дошло.

Для чего такие чудеса. Получается, что чтобы посмотреть, что пишет загрузчик нужно запустить какой-нибудь minicom на 1500000, а для ядра на 115200. Непонятно.

Он ничего интересного не пишет. Сразу 115200 выставляйте, всё нужное увидите. В апстримном u-boot такая скорость.

Имеете в виду, что загрузчик на SD-карте вообще будет не нужен?

Хотелось бы на это надеяться. Но не факт конечно. Я пока пришёл к выводу, что нужно перезаписывать SPI, так как очистка emmc избавиться от этого u-boot не помогает. А может я что-то не то делаю.

И как лицезреть эту ляпоту? Это относится к u-boot от версии 20201111 регулярки? Как отдельно обновить этот u-boot на SD-карте?

Да в Сизифном u-boot есть поддержка графики в u-boot. alt-rootfs-installer из моего git.
Отдельно обновить u-boot можно:
https://www.altlinux.org/Write/rootfs#Замена_загрузчика

Но новый u-boot должен лежать в /usr/share/u-boot/ флешки.

Вручную u-boot записывается теперь так:
dd if=путь/до/idbloader.img of=$MEDIA seek=64
dd if=путь/до/u-boot.itb of=$MEDIA seek=16384

Оффлайн Merblud

  • Давно тут
  • **
  • Сообщений: 460
Re: Альт на rk3399
« Ответ #62 : 19.11.2020 22:18:27 »
Вручную u-boot записывается теперь так:
dd if=путь/до/idbloader.img of=$MEDIA seek=64
dd if=путь/до/u-boot.itb of=$MEDIA seek=16384

Так он так и раньше записывался. После того, как alt-rootfs-installer у меня ругнулся, что не хватает какого-то файла, я было подумал, что что-то поменялось.
А для чего там еще u-boot-rockchip.bin лежит? Это что за зверь такой?

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Альт на rk3399
« Ответ #63 : 19.11.2020 23:45:26 »
Вручную u-boot записывается теперь так:
dd if=путь/до/idbloader.img of=$MEDIA seek=64
dd if=путь/до/u-boot.itb of=$MEDIA seek=16384

Так он так и раньше записывался. После того, как alt-rootfs-installer у меня ругнулся, что не хватает какого-то файла, я было подумал, что что-то поменялось.
А для чего там еще u-boot-rockchip.bin лежит? Это что за зверь такой?

Вместо idbloader.img был idbspl.img. Отсюда и ошибка.
u-boot-rockchip.bin - это два в одном. Можно одной командой записать:

dd if=путь/до/u-boot-rockchip.bin of=$MEDIA seek=64

Оффлайн Михаил Ч.

  • Начинающий
  • *
  • Сообщений: 2
    • Email
Re: Альт на rk3399
« Ответ #64 : 06.08.2021 15:45:31 »
Всем привет. Это мой первый пост. Тему создать не удалось. Есть опыт сборки "кастомных Linux" для ARM из исходников. Хочется осилить тоже с помощью mkimage-profiles например. Прошу подсказать с чего начать. С помощью mkimage-profiles собрал live-builder-mini.iso для x86_64. Не до конца понял круг задач решаемых mkimage-profiles. Не удалось собрать какой нибудь .iso для ARM-а какого нибудь.
Прошу подсказать по вопросам:
1. Образ собирается из бинарных компонентов, не из исходников?
2. Подскажите для примера рабочую команду "make ..." для сборки любого.iso для любого ARM (можно для RPI4). Какую подготовку необходимо провести?

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Альт на rk3399
« Ответ #65 : 06.08.2021 19:07:05 »
1. Образ собирается из бинарных компонентов, не из исходников?

Да.

2. Подскажите для примера рабочую команду "make ..." для сборки любого.iso для любого ARM (можно для RPI4). Какую подготовку необходимо провести?

Ну, тут вопросы у меня :)

1. Зачем собирать iso для одноплатника? Для него же лучше собрать rootfs?
Но я сам тестирую iso на одноплатниках, потому что нет Байкала М :-)

2. На чём собираете? На какой архитектуре? Сами настраивали или загрузились с лайва builder?

А так, если нативно собирать на RPi4, загрузившись с live builder:
make <цель>.iso

А если не нативно, то нужно установить qemu и указать параметры ARCH=aarch64 APTCONF=<путь_до_apt.conf_aarch64>
apt.conf нужно самому настроить.

Оффлайн Михаил Ч.

  • Начинающий
  • *
  • Сообщений: 2
    • Email
Re: Альт на rk3399
« Ответ #66 : 06.08.2021 20:00:04 »
Спасибо.
1. Зачем собирать iso для одноплатника? Для него же лучше собрать rootfs?
Привычка, обычно собираю образ для SD. Rootfs допустим соберу, а загрузчик (SPL+Uboot) какой взять, какое ядро? Одноплатников много: RPI(3,4), с IMX6 несколько и другие известные.
На чём собираете? На какой архитектуре? Сами настраивали или загрузились с лайва builder?
Есть три машины с АльтЛинукс: АльтСервер Р9(Intel), АльтДесктоп Р9(Intel), RPI4 8G(Arm64). Настроил, но есть и лайв builder на USB. Нативно на RPI4 попробую.
Не нативно кашернее, т.к. на "сервере" Intele 12 потоков и 16 оперативки.
Запукаю: "make ARCH=armh APTCONF=/etc/apt/apt.conf.sisyphus.arm live-builder-mini.iso DEBUG=1"
apt.conf нужно самому настроить.
Или /etc/apt/apt.conf_armh например заполнить правильно?
Уже есть такие:
Спойлер
apt.conf             apt.conf.p9.mipsel         apt.conf.sisyphus.ppc64le  repositories             sources.list.p9.armh           sources.list.sisyphus.mipsel
apt.conf.4.1.ppc     apt.conf.p9.ppc64le        apt.conf.sisyphus.riscv64  sources.list             sources.list.p9.mipsel         sources.list.sisyphus.ppc64le
apt.conf.d           apt.conf.sisyphus.aarch64  mirrors                    sources.list.4.1.ppc     sources.list.p9.ppc64le        sources.list.sisyphus.riscv64
apt.conf.p9.aarch64  apt.conf.sisyphus.armh     pkgpriorities              sources.list.d           sources.list.sisyphus.aarch64  vendors.list
apt.conf.p9.armh     apt.conf.sisyphus.mipsel   preferences.d              sources.list.p9.aarch64  sources.list.sisyphus.armh     vendors.list.d
apt.conf:
Спойлер
[root@alt9s apt]# cat apt.conf
/*
 * This is the main configuration file for the APT suite of tools,
 * see apt.conf(5) for details.
 */

// See apt-cdrom(8) for details.
Acquire::CDROM::Copy "true";
Acquire::CDROM::mount "/media/ALTLinux";

RPM
{
        Allow-Duplicated {
                // Old-style kernels.
                "^(NVIDIA_)?(kernel|alsa)[0-9]*(-adv|-linus)?($|-up|-smp|-secure|-custom|-enterprise|-BOOT|-tape|-aureal)";
                // New-style kernels.
                "^kernel-(image|modules)-.*";
        };
        Hold {
                // Old-style kernels.
                "^(kernel|alsa)[0-9]+-source";
        };
};

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Альт на rk3399
« Ответ #67 : 06.08.2021 20:13:10 »
Запукаю: "make ARCH=armh APTCONF=/etc/apt/apt.conf.sisyphus.arm live-builder-mini.iso DEBUG=1"

Для armh iso не соберёте. Только для aarch64.

rootfs собираются универсальные (mkimage-profiles из ветки next: http://git.altlinux.org/people/antohami/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=shortlog;h=refs/heads/next) из целей типа vm/regular-<имя>.img.xz

Нужно будет настроить беспарольный sudo для запуска tar2fs. Либо собирать tar.xz из той же цели.

Запись как архивов, так и образов и загрузчиков на них осуществляется по инструкции:
https://altlinux.org/Write/rootfs