我是yocto项目的新手,并根据我能从互联网上找到的指南来构建项目。
当我按照目前的指南来构建图像时,我能够成功完成它。
http://www.yoctoproject.org/docs/1.8/yocto-project-qs/yocto-project-qs.html
但我不知道它在哪里找到了u-boot源代码,并告诉我获取内核源代码。
答案 0 :(得分:1)
如果您使用的是1.8(基于上面的链接),那么您应首先阅读https://www.yoctoproject.org/docs/1.8/bsp-guide/bsp-guide.html以了解有关如何执行BSP相关工作的更多信息。一旦你理解了内核示例,这应该会引导你如何使用U-Boot。
答案 1 :(得分:1)
查找内核源代码和u-boot源代码的最佳方法是查看MACHINE
conf/local.conf
变量
例如:https://github.com/Freescale/meta-fsl-arm/blob/master/conf/machine/imx6dlsabresd.conf
MACHINEOVERRIDES =. "mx6:mx6dl:"
require conf/machine/include/imx6sabresd-common.inc
KERNEL_DEVICETREE = "imx6dl-sabresd.dtb imx6dl-sabresd-ldo.dtb imx6dl-sabresd-hdcp.dtb \
imx6dl-sabresd-enetirq.dtb imx6dl-sabresd-btwifi.dtb"
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "mx6dlsabresd_config,sdcard"
UBOOT_CONFIG[epdc] = "mx6dlsabresd_epdc_config"
UBOOT_CONFIG[mfgtool] = "mx6dlsabresd_config"
MACHINE_FIRMWARE += "firmware-imx-epdc"
第require conf/machine/include/imx6sabresd-common.inc
行告诉我们要imx6sabresd-common.inc,这会让我们看到imx-base.inc
在imx-base.inc
内,它显示PREFERRED_PROVIDER_virtual/bootloader ??= "u-boot-fslc"
开启,OpenEmbedded Layer Index,检查u-boot-fslc
,您会看到u-boot-fslc_2016.11.bb,这会导致u-boot-fslc.inc
对于内核,这是相同的,以与u-boot相同的方式查找:
# Handle default kernel
IMX_DEFAULT_KERNEL = "linux-imx"
IMX_DEFAULT_KERNEL_mxs = "linux-fslc"
IMX_DEFAULT_KERNEL_mx5 = "linux-fslc"
IMX_DEFAULT_KERNEL_mx6 = "linux-fslc-imx"
IMX_DEFAULT_KERNEL_mx7 = "linux-fslc-imx"
IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx"
PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}"