055e6162bb
Currently, the linux.mk logic for appended DTB image does the appending of the DTB in place, directly at the end of the zImage using a >> sign. This is incorrect because if you run "make linux-rebuild" multiple times, you get the DTB appended over and over again to the image. Since keeping the 'zImage' or 'uImage' name for the appended DTB image is not very clear, this commit moves to using the 'zImage.<dtb>' and 'uImage.<dtb>' format. This way, we can clearly distinguish the original image from the appended one. In addition, this naming scheme easily allows to generate *multiple* appended DTB images: from one zImage, you can generate multiple zImage.<dtb> for several DTBs, and then generate (if requested) the corresponding uImage.<dtb>. To achieve this, this commit: - Changes the definition of LINUX_APPENDED_DTB to iterate over $(KERNEL_DTS_NAME), and generate a zImage.<dtb> image for each of them. - Changes the addition of LINUX_APPENDED_DTB for appended uImage to also iterate over $(KERNEL_DTS_NAME). - Provide a different implementation of LINUX_INSTALL_IMAGE which installs all the appended DTB images (but not the bare image) - Remove the checks that verified that only one DT name is passed when appended DTB is used, since we now support generating multiple DT images. Some of the tested configuration: - Normal uImage with several DTBs BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x200000" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox" Contents of output/images/: armada-370-mirabox.dtb armada-xp-gp.dtb armada-xp-matrix.dtb uImage - Normal zImage with several DTBs BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7" BR2_LINUX_KERNEL_ZIMAGE=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox" Contents of output/images: armada-370-mirabox.dtb armada-xp-gp.dtb armada-xp-matrix.dtb zImage - Appended uImage with several DTBs: BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7" BR2_LINUX_KERNEL_APPENDED_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x200000" BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox" Contents of output/images: uImage.armada-370-mirabox uImage.armada-xp-gp uImage.armada-xp-matrix - Appended zImage with several DTBs: BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7" BR2_LINUX_KERNEL_APPENDED_ZIMAGE=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox" Contents of output/images: zImage.armada-370-mirabox zImage.armada-xp-gp zImage.armada-xp-matrix In all configurations, the contents of output/target/boot/ was the same if BR2_LINUX_KERNEL_INSTALL_TARGET=y. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> |
||
---|---|---|
.. | ||
Config.ext.in | ||
Config.in | ||
Config.tools.in | ||
linux-ext-fbtft.mk | ||
linux-ext-rtai.mk | ||
linux-ext-xenomai.mk | ||
linux-tool-cpupower.mk | ||
linux-tool-perf.mk | ||
linux.mk |