LINUX.ORG.RU

Сборка ядра для embedded system

 , , ,


0

2

Здравствуйте. Необходимо собрать ядро для embedded-устройства из исходников, располагающихся по адресу: https://github.com/linux4sam/linux-at91 В устройстве установлен процессор AT91SAM9G45

В результате, после загрузки ядра на устройство с помощью u-boot и при попытке запуска ядра возникает сообщение:

Error: unrecognized/unsupported machine ID (r1 = 0x000008a4).

Available machine support:

ID (hex)        NAME
ffffffff        Generic DT based system
ffffffff        Atmel AT91SAM9

Please check your kernel config and/or bootloader.

Насколько я понял, u-boot сообщает, что требуется ядро с machine id = 0x000008a4, но в kernel определен machine id = 0xffffffff

Само ядро сконфигурировано с опцией CONFIG_SOC_AT91SAM9: Описание опции:

Select this if you are using one of those Atmel SoC:
AT91SAM9260, 
AT91SAM9261, 
AT91SAM9263, 
AT91SAM9G15, 
AT91SAM9G20, 
AT91SAM9G25, 
AT91SAM9G35, 
AT91SAM9G45, 
AT91SAM9G46, 
AT91SAM9M10, 
AT91SAM9M11, 
AT91SAM9N12, 
AT91SAM9RL, 
AT91SAM9X25, 
AT91SAM9X35, 
AT91SAM9XE

Т. е. сама опция уже включает в себя поддержку AT91SAM9G45, но при этом u-boot не хочет запускать ядро, скомпилированное с этой опцией. Если в u-boot задать setenv machid=0xffffffff, то ядро просто не запустится.

Каким образом можно решить эту проблему? Насколько я знаю, из ядра убрали поддержку конкретно процессора AT91SAM9G45. Можно ли как-нибудь (патчами, или м. б. существуют форки исходников) добавить ее снова?



Последнее исправление: vglv (всего исправлений: 3)

Задал в menuconfig опцию «Use appended device tree blob to zImage (EXPERIMENTAL)».

Добавил в конец образа ядра dtb, как это описано в справке по опции:

cat zImage <filename>.dtb > zImage_w_dtb

И залил ядро на устройство.

Та же самая ошибка при загрузке.

vglv
() автор топика

Ты собрал ядро с использовнаием board файла, а надо с использованием device-tree для конфигурации.

Dark_SavanT ★★★★★
()

Каким образом скомпилировать ядро с dtb внутри него? В интернете практически нет информации на эту тему.

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