Как заставить uBoot работать со сквошфс / Что такое FDT в uBoot?
-
22-09-2019 - |
Вопрос
Я настроил набор инструментов Камикадзе (из openwrt) и скомпилировал ядро Linux 2.6.30.x для AMCC PPC405ex Килауэа справочная доска.Однако по какой-то причине я делаю что-то не так в uBoot, так как не могу запустить ядро из образа sqashfs.Изображение нормально загружается по tftp и распаковывается, но вывод на консоль не запускается.
Я не менял командную строку ядра Linux, и она выглядит нормально (console=ttyS0,115200 root=/dev/mtdblock
).Я тоже немного озадачен, что это такое ФДТ в uBoot?
Я не совсем уверен, действительно ли это относится к stackoverflow, но, опять же, это и не вопрос superuser.com (а поскольку это связано со средой разработки, это определенно так и есть). связанные с программированием, хотя это не совсем вопрос программирования)
Решение
Я смог решить эту проблему сам, я нет предполагается использовать openwrt-boardname-squashfs.img
но вместо этого я должен использовать openwrt-architecture-uImage
образ, содержащий только ядро, возьмите root.squashfs
и openwrt-boardname.dtb
из build_dir
поскольку они не копируются в bin/
каталог.
после этого эти команды правильно отобразят доску:
tftp 0xfc1e0000 openwrt-kilauea.dtb
tftp 0x400000 openwrt-ppc40x-uImage
tftp 0x200000 root.squashfs
setenv bootargs 'console=ttyS0,115200 root=/dev/mtdblock2 rw'
bootm 0x400000 - 0xfc1e0000
возможно, есть более простой способ, но я не понял, как «переразбить» mtd, чтобы мне не пришлось изначально загружать образ ядра в user
место в памяти.