Chcę użyć nieskompresowanego obrazu jądra i uruchomić BeagleBoard. Ogólnie używam uImage do uruchamiania jądra, które jest w skompresowanym formacie. Jak korzystać z nieskompresowanego obrazu jądra?
Chcę użyć nieskompresowanego obrazu jądra i uruchomić BeagleBoard. Ogólnie używam uImage do uruchamiania jądra, które jest w skompresowanym formacie. Jak korzystać z nieskompresowanego obrazu jądra?
Odpowiedzi:
O ile mi wiadomo, U-Boot nie może bezpośrednio uruchomić „surowego” obrazu ELF ( vmlinux). Musisz przekształcić go w uImageformat, który zawiera skompresowany vmlinuxplus kilka dodatkowych bajtów metadanych opisujących adres ładowania jądra. U-Boot FAQ 2.19 wyjaśnia, jak generować uImage; jest dość prosty, używając mkimagenarzędzia w drzewie źródeł U-Boot:
mkimage -A arm -O linux -T kernel -C gzip … -d vmlinux uImage
(Możesz potrzebować dodatkowych parametrów wskazujących adres ładowania.)
Jeśli używasz Buildroot, wybierz uImageplik wyjściowy jądra ( BR2_LINUX_KERNEL_UIMAGE=y). Skompiluj normalnie, a Buildroot utworzy również vmlinuxplik w kroku pośrednim. Podczas gdy vmlinuxplik nie jest kopiowany do /output/imageskatalogu można znaleźć w ./output/build/linux-custom/(lub uruchamiając find . -name "vmlinux").