我有一個COM-express
模塊,由Pactron
和ARMADA XP 78460
組成。該模塊支持小端和大端模式。 我能夠用Marvell toolchain
編譯內核版本(zImage
),DTS和根文件系統(使用Buildroot
)作爲大端。 現在我正在編寫一個uboot
(版本2011.12)for big endian,但目前爲止還沒有成功,因爲我有一些問題鏈接已經編譯成little endian的一些ddr3
庫,我無法找到這些庫的正確源文件。
現在我的問題是,是否有必要在大端編譯u-boot。我認爲它需要在大端編譯,如this HW spec page 95所述,如果圖像編譯爲Big endian模式,圖像的響應性切換回大端模式,但我不確定。 如果有必要編譯u-boot在big endian,我應該聯繫pactron
支持發送這些庫的源文件。這裏是我看到,當我運行make是否需要將u-boot編譯爲big endian才能以big endian模式加載zImage
錯誤/home/asoufi/BIGENDIAN/Marvell_toolchain_201301/armebv7-marvell-linux-gnueabi-softfp_i686/bin/../lib/gcc/armeb-marvell-linux- gnueabi/4.6.4 /../../../../ armeb-marvell-linux-gnueabi/bin/ld:./src_ddr/ddr3_training_axp.lib(ddr3_hw_training.o):編譯爲一個小端系統和目標是大端
謝謝
謝謝Tom,你能否澄清一下u-boot編譯成little endian的選項。如果u-boot是小端,並且所有其他圖像(zImage,DTS和根文件系統)都是大端,那麼u-boot如何與zImage,DTS和根文件系統進行交互。這樣做是否足以說明我的平臺正在運行BIG endian,或者必須讓u-boot執行big endian。 –
我在說你需要(可能)讓包括U-Boot在內的世界變得不是LE,因此需要與你的供應商談論他們給你的任何顯然只有二進制的斑點(這是一個GPL違規)。 –