LINUX.ORG.RU

Пара дурацких вопросов про системы на ARM и ядро

 ,


0

2

Добрый вечер, господа.

Возникло несколько нубских вопросов.

1) Вот есть у нас какой-нибудь SoC на ARMv8 (для определенности). Есть ядро для него и есть device tree blob. А где физически хранится информация о карте памяти? Т.е. одно из ядер CPU собирается исполнить, например, store по некоторому адресу, и уже на уровне L1 кэша должно быть известно, что это за адрес - оперативка или что-нибудь еще, TLB и MMU должны знать, какие у страницы, содержащей этот адрес, параметры (cacheable/non-cacheable, access ordering и т.п.). А откуда они это знают? Эта логика только софтварная, т.е. кроме загрузки dtb в память и передачи ядру указателя на него, ничего не нужно больше, или эта логика и в железе есть, и, скажем, L1, когда видит store, интересуется у кого-то, что это за адрес? ARM ARM листал, но сходу найти ответ, увы, не смог:(

2) Допустим, собрал я ядро для этого SoC'а. Но загрузчик хочу использовать какой-нибудь совсем тривиальный, поэтому с помощью objcopy сделал из elf'ника binary, потеряв при этом возможность по произвольному адресу ядро класть. И есть какой-нибудь способ, кроме ручной правки linker-скриптов, этот адрес задать? Беглый поиск показал, что для uboot'а это можно переменной задать, но если я не хочу с ним связываться, что мне делать?

Спасибо большое.

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

ка ие вопросы такие и ответы. можешь лучше - ответь :)

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

кстати бутвраппер выдергивает phys offset из dtb ;)

anonymous
()

Но загрузчик хочу использовать какой-нибудь совсем тривиальный,

Насколько я помню, ARM ядро надеется что u-boot все что надо уже проинициализировал, поэтому совсем тривиальным загрузчик может не получиться

alx777 ★★
()

Инициализацией памяти занимается загрузчик (не важно, U-Boot, RedBoot или другой).

Беглый поиск показал, что для uboot'а это можно переменной задать, но если я не хочу с ним связываться, что мне делать?

Брать другой загрузчик или писать свой велосипед, иначе никак.

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