Вы вполне можете использовать use процедуру, о которой вы упоминаете, с другим деревом исходных текстов ядра, для которого эта процедура была написана.
Процедура, на которую вы ссылаетесь, должна применяться к ядру Arago Linux — прямое создание пакета zImage+dtb в качестве цели make кажется патч к стандартному файлу arch/arm/boot/Makefile, то есть эта функция может не быть частью текущей системы сборки основных ядер.
Вы можете получить тот же результат, выполняя вручную то, что делает патч, то есть добавляя файл dtb к zImage перед созданием файла uImage:
make ARCH=arm CROSS_COMPILE=arm-linux-gnu- zImage am335x-boneblack.dtb
cp arch/arm/boot/zImage arch/arm/boot/zImage.original
ls -l arch/arm/boot/zImage arch/arm/boot/dts/am335x-boneblack.dtb
-rw-rw-r-- 1 user user 29162 Oct 16 23:19 arch/arm/boot/dts/am335x-boneblack.dtb
-rwxrwxr-x 1 user user 2030848 Oct 16 23:21 arch/arm/boot/zImage
cat arch/arm/boot/zImage arch/arm/boot/dts/am335x-boneblack.dtb > arch/arm/boot/zImage-dtb
ls -l arch/arm/boot/zImage-dtb
-rw-rw-r-- 1 user user 2060010 Oct 16 23:25 arch/arm/boot/zImage-dtb
cp arch/arm/boot/zImage-dtb arch/arm/boot/zImage
make ARCH=arm CROSS_COMPILE=arm-linux-gnu- uImage LOADADDR=0x80008000
ls -l arch/arm/boot/uImage
-rw-rw-r-- 1 user user 2060074 Oct 16 23:27 arch/arm/boot/uImage
Вы заметите, что длина файла uImage ровно на 64 байта больше, чем длина пакета ZImage, из которого он был создан, что соответствует длине стандартного заголовка u-boot.
Наконец, мы можем переименовать файл пакета uImage в имя, используемое в процедуре, и восстановить исходный, не являющийся пакетом, zImage обратно в случае, если он вам понадобится:
mv arch/arm/boot/uImage arch/arm/boot/uImage-dtb.am335x-boneblack
mv arch/arm/boot/zImage.original arch/arm/boot/zImage
Альтернативным решением является патч arch/arm/boot/Makefile. При применении его к моему основному ядру 3.17 некоторые его части были отклонены, что означает необходимость внесения изменений в make-файл и создания нового патча для 3.17. сохранены для использования в будущем.
Чтобы пакет uImage можно было использовать, вам необходимо включить CONFIG_ARM_APPENDED_DTB в файле конфигурации вашего ядра — ссылка Шринивас Кандагатла.
person
Frant
schedule
17.10.2014