LINUX.ORG.RU

Ищу постигшего тайны сборки u-boot для арм64 для передачи опыта и общения и дружбы.

 


0

1

Писать можно на vk, телегу @gregorytorvalds

Не могу многие моменты при сборке одолеть, а инфа противоречивая и непригодная, тратишь кучу времени, мучаешься, а не работает. Хотелось бы пообщаться с передовиком.

★★★★★
Ответ на: комментарий от burato

привет. поэтому я и хотел в теме 'работа' за деньги попрросить форумчан написать функцию, которая могла бы грузить ядро без u-boot. даже если сейчас вы сможете разобраться как собирается u-boot, то гарантирую, что через какое-то время возникнут новые траблы. есть только один выход, это скинутся копейками, найти хорошего фрилансера, который захочет помочь в написании чего-то подбного, что позволит обойтись без u-boot и прочей фигни. на LOR много спецов, но вряд ли они помогут. потому что если у тебя получиться, то по их мнению, они останутся без 'хлеба'. вобщем ищи, если что то я могу быть третьим) и скинуться если хватить денег.

Assembler
()
Ответ на: комментарий от Assembler

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

hobbit ★★★★★
()

Пару лет назад собирал под армв7. Там с арм64 какие-то специфические сложности? Он же вроде 2мя командами маке собирался?

sergej ★★★★★
()
Ответ на: комментарий от hobbit

вменяемую документацию

Он более менее неплохо документирован на языке Си)

sergej ★★★★★
()
Ответ на: комментарий от hobbit

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

Assembler
()
export ARCH=arm64
make some_board_defconfig
make CROSS_COMPILE=aarch64-unknown-none-

Ну так. Приблизительно. Или вам там поддержку какой-то борды, а то и процессора писать надо? За этим в даташит.

a1batross ★★★★★
()
Ответ на: комментарий от a1batross

ребята, даже дело не в этом. все эти arm-trusted-firmware... вобщем нужен другой путь. и я добавлю к сказанному, что многие на данном форму справедливо возмущаются что темы создаваемые на LOR мало имеют отношения к Linux. или создаются какие-то уж слишком банальные принижающие возможности данного форуму. Этот форум должен решать куда более глобальные проблемы связаные с Linux. и тема загрузчика u-boot поднималась тут сотни раз. думаю, что время решить проблему связаную с загрузкой ядра под arm уже давно настало. имено этот форум с его интеллектуальной мощью и должен бы сделать это, но нет. может еще не время.

Assembler
()
Последнее исправление: Assembler (всего исправлений: 1)
Ответ на: комментарий от Assembler

привет. поэтому я и хотел в теме ‘работа’ за деньги попрросить форумчан написать функцию, которая могла бы грузить ядро без u-boot. даже если сейчас вы сможете разобраться как собирается u-boot

Я сейчас ядро Haiku загружаю на голом железе в виртуальной машине RISC-V без u-boot, UEFI, BBL, OpenSBI и прочего.

Проще свой загрузчик написать, чем возиться со сборкой u-boot/EDK2, у меня это 2-3 дня заняло.

X512 ★★★★★
()
Последнее исправление: X512 (всего исправлений: 1)
Ответ на: комментарий от X512

я предлагаю вам открыть платные курсы по написанию самостоятельно загрузчика под arm девайсы. пара желающих думаю уже есть)

Assembler
()
Ответ на: комментарий от X512

я понимаю это. но если сможешь хоть под один, то при небольшом усилии и прокачке умения сможешь и под остальные написать.

Assembler
()
Ответ на: комментарий от burato

А вот как записать на карту памяти уже проблемы

Так трудно «dd» запустить? Или проблемы с подготовкой разметки диска и ФС?

X512 ★★★★★
()
Ответ на: комментарий от X512

трудно придумать правильные манипуляции. После записи dd по уарту тишина. А там 100500 манипуляций по записи должно быть. Но инфы про это нет...

burato ★★★★★
() автор топика
Ответ на: комментарий от X512

Я полагаю ты и так знаешь ответ на этот вопрос, раз уж интересуешься клангом.

a1batross ★★★★★
()
Ответ на: комментарий от slapin

+1!

Нормальная там документация

Да. И реализация там тоже нормальная, которую можно и, самое главное, нужно расширять своими решениями, используя уже готовое, а не городя свои самосборные велосипеды. Этого, конечно же, ни кто не запрещает делать, но время убивать… Несколько не логично. Если по сути (побуду немного капитаном Очевидность), то нужно просто добавить свою борду в набор и скомпилить решение.

По теме. TC, что за железо, если не секрет?

UART молчит как рыба об лёд? На каком этапе? Важно понимать что u-boot на ARM сперва проваливается на уровень EL3 (какой именно ARM не важно, т.к. механизмы сходные и для Aarch32 и для Aarch64 за редкими исключениями), где производится инициализация железа и там же работает та ОС, которая должна обеспечивать TEE (Trusted Execution Environment) в дальнейшем. Там UART молчит? И что именно Вы разрабатываете – TEE или «просто надо Linux загрузить»? Если первое, то это один разговор. Если «просто загрузить Linux или прошивку» и там UART молчит, то разговор другой.

Пока я стараюсь понять что за железо и что за задача, т.к. TEE это отдельный и полноформатный звиздец. Ну а «просто загрузить прошивку», это малость другой вопрос. Потому что если на уровне EL3 всё проинициализировали и не предполагается работа внутренней ОС, реализующей TEE, то дальше проц выскочит уровнями выше и должен приступить к загрузке прошивки или условного Linux.

Тут просто надо понять где именно факап происходит.

Moisha_Liberman ★★
()
Последнее исправление: Moisha_Liberman (всего исправлений: 2)
Ответ на: комментарий от a1batross

То же +1.

Я не вижу никаких проблем в том чтобы использовать существующие загрузчики.

Со всеми этими NIH-синдромами уже столько всякого нагородили, что … ну его на фиг.

Moisha_Liberman ★★
()
Ответ на: комментарий от burato

После записи dd по уарту тишина

Тут всё просто. Если железка известная - можно искать как сделано во всяких openwrt/yocto/archlinux-arm. Если кастомная, то без jtag-а там делать нечего.

sergej ★★★★★
()
Ответ на: комментарий от sergej

без jtag-а там делать нечего

ну или хорошая дока на саму железку или поддержка от её разработчиков.

sergej ★★★★★
()
Последнее исправление: sergej (всего исправлений: 1)
Ответ на: комментарий от Assembler

помочь в написании чего-то подбного, что позволит обойтись без u-boot и прочей фигни

Без линукса? (и без U-boot)

t20
()
Ответ на: комментарий от burato

Это чего?

Если соберёшься писать свой загрузчик ядра Линукса, то тебе понадобится проделать следующие действия:

  1. Настроить умножитель частоты в процессоре.
  2. Настроить контроллер динамической оперативной памяти.
  3. Настроить контроллер энергонезависимой памяти, где находится линуксовое ядро.
  4. Отключить прерывания процессора, блок управления памятью и перевести процессор в непривилегированный режим работы.
  5. Скопировать ядро с файловой системой из энергонезависимой памяти в оперативную память и запустить ядро на исполнение.

Наверное, ты уже сам догадываешься, что проделать правильно все эти действия без пошагового отладчика обычному человеку вряд ли удастся в обозримое время. Грамотные форумчане уже советовали тебе использовать джейтаговский отладчик. От себя добавлю, что без подробной документации на внутренние регистры процессора делать тоже нечего, поэтому процессоры «Бродкома» сразу в пролёте.

Теперь зачем может понадобиться свой загрузчик, если народ советует переделывать «Юбут»? Например, свой загрузчик поможет ускорить время загрузки ядра Линукса. Дело в том. что сегодня «Юбут» разбух настолько, что для своего запуска на исполнение он сначала копирует себя из энергонезависимой памяти во внешнее динамическое ОЗУ и только после этого запускает себя. Свой загрузчик вполне уложится во внутреннее ОЗУ процессора и запустится оттуда, что ускорит время загрузки ядра Линукса, пусть и ненамного.

Enthusiast ★★★
()
Ответ на: комментарий от burato

Можно брать старые версии неразбухшего юбута, это не проблема.

Как по-твоему эти «юбутовцы» зарабатывают себе на пропитание? Сначала они пошагово отлаживают свой загрузчик сами, а народу вываливают явно переусложнённый, но дармовой товар. Зачем? А затем, чтобы люди, которым нужно запуститься прямо сегодня или ещё вчера, просто принесли денег «юбутовцам» за их услуги. Теперь тебе понятно почему в «Юбуте» не так просто разобраться?

Enthusiast ★★★
()

А какой профит разбирающемуся в u-boot-е будет от дружбы с тобой? Зачем ему тратить время?

Harald ★★★★★
()
Ответ на: комментарий от Harald

Корыстный пусть сразу нахер валит

burato ★★★★★
() автор топика
Ответ на: комментарий от Enthusiast

Приходишь ты здоровый к доктору, а ему зарабатывать хочется...

burato ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.