I have checked the reference and bsp guides, but nothing in there. I was just getting this error message before I started to look for further information other than grepping other layers, like meta-yocto-bsp: ERROR: Nothing PROVIDES 'u-boot' ERROR: u-boot was skipped: because UBOOT_MACHINE is not set ERROR: u-boot was skipped: because UBOOT_MACHINE is not set ERROR: u-boot was skipped: because UBOOT_MACHINE is not set ERROR: u-boot was skipped: because UBOOT_MACHINE is not set ERROR: Required build target 'core-image-minimal' has no buildable providers. Missing or unbuildable dependency chain was: ['core-image-minimal', 'u-boot']
The documentation should mention that this variable holds the value that one would otherwise pass to make when building u-boot separately. Here is the proof for that: ../meta/recipes-bsp/u-boot/u-boot.inc:43: oe_runmake ${UBOOT_MACHINE}
UBOOT_ENTRYPOINT and UBOOT_LOADADDRESS could be added to the BSP guide as well if we are at improving the uboot documentation. Those are simpler to understand, and hence document though.
Hi, Here is a first shot at describing UBOOT_MACHINE variable based on information I got from Paul. UBOOT_MACHINE: Specifies the value passed on the make command line when building u-boot to indicate the target platform configuration. This variable is typically set from the machine configuration file (i.e. conf/machine/<machinename>.conf). I don't have the information needed to add UBOOT_ENTRYPOINT and UBOOT_LOADADDRESS to the glossary as I do not know how to guide the user regarding setting these variables. So if there is any information for these two variables I can then try and address them. Scott
Thanks; the last two variables are used for image creation with uboot. There is a util called "uboot-mkimage", and those two variables are passed without any changes to that executable with the right command line parameters.
Hi, Here are some links for the new variables. I tried to google some information on the entry point and load address information to get a little more substance but in the end just assumed people would understand these. Please look this information over. Thanks, Scott http://www.yoctoproject.org/docs/1.5/ref-manual/ref-manual.html#var-UBOOT_MACHINE http://www.yoctoproject.org/docs/1.5/ref-manual/ref-manual.html#var-UBOOT_ENTRYPOINT http://www.yoctoproject.org/docs/1.5/ref-manual/ref-manual.html#var-UBOOT_LOADADDRESS
That is a good decision IMHO. They need to understand u-boot if they wanna use these variables. IMO, it is enough if Yocto only documents the Yocto related operation, i.e. variable is passed to the u-boot util.
Hi, I am marking this one RESOLVED and changing the doc requirement to "Done". Have not heard anything additional for changes. Thanks, Scott
Planned to mention (apparently forgot about it) that the UBOOT_TARGET documentation is missing.
Laszlo, I will add that variable to the document. Scott
OK, it is basically the target that one can pass to u-boot for building, like SPL (second stage boot-loader), AIS (Texas Instruments wrapper script) related etc... If the user does not pass anything, Yocto will pass "all" to the u-boot building process by default.
Hi Laszlo, How does this sound? UBOOT_TARGET: Specifies the target you can pass to U-Boot for building (e.g. SPL and AIS). The UBOOT_TARGET variable is passed as a command-line parameter to the uboot-mkimage utility. If you do not pass this variable to the utility, the OpenEmbedded build process uses "all" for the U-Boot building process.
There is just one minor, otherwise good: the target is not passed to the mkimage utility (it is a bit different to the other variables), but directly to the "make" command when building u-boot itself. I know you may not prefer seeing code, but just to clarify myself what I mean: http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-bsp/u-boot/u-boot.inc#n31 there is the line "oe_runmake ${UBOOT_MAKE_TARGET}" in there. That line means when you build u-boot, it will build the target passed, or if nothing specified Yocto sets that to "all", so u-boot will be built with the target "all" (whatever u-boot defines in its building for that). Let me know if it is still unclear.
Laszlo, Thanks for the quick read and comments. Here is "round two" - let me know if I am closer. Thanks... UBOOT_TARGET: Specifies the target used for building U-Boot. The target is passed directly as part of the "make" command (e.g. SPL and AIS). If you do not specifically set this variable, the OpenEmbedded build process passes and uses "all" for the target during the U-Boot building process.
Looks good to me. Thank you for your work; much appreciated!
You are welcome Laszlo. Thanks for helping me. See http://www.yoctoproject.org/docs/1.5/ref-manual/ref-manual.html#var-UBOOT_TARGET for the final. Scott