* [RFC PATCH 0/1] u-boot inc: update inc file for newer u-boot versions @ 2012-02-03 21:37 Chase Maupin 2012-02-03 21:37 ` [PATCH 1/1] " Chase Maupin 0 siblings, 1 reply; 6+ messages in thread From: Chase Maupin @ 2012-02-03 21:37 UTC (permalink / raw) To: openembedded-core; +Cc: Chase Maupin All, I would like your feedback on this patch which is intended to solve the following issues with some of the newer versions of u-boot: 1. The u-boot image now ends in .img instead of .bin 2. Some versions and plaforms may use and SPL bootloader which is built at the same time as the u-boot binary I tried to make sure this was backwards compatible and I was able to test this for an am335x-evm machine from the meta-texasinstruments layer. Most of these changes were ported from the u-boot.inc file that is in the meta-texasinstruments layer and cleaned up to make them more generic. Lastly, I noticed that the u-boot.inc file does not have any kind of INC_PR defined like I would have expected to help make sure that updates to this file cause a rebuild of u-boot recipes that depend on this include file. Is this something that should be added? Thanks, Chase ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/1] u-boot inc: update inc file for newer u-boot versions 2012-02-03 21:37 [RFC PATCH 0/1] u-boot inc: update inc file for newer u-boot versions Chase Maupin @ 2012-02-03 21:37 ` Chase Maupin 2012-02-03 21:43 ` Maupin, Chase 0 siblings, 1 reply; 6+ messages in thread From: Chase Maupin @ 2012-02-03 21:37 UTC (permalink / raw) To: openembedded-core; +Cc: Chase Maupin * Add support for different suffixes found with later u-boot versions which have switched from .bin to .img * Allow recipes that include u-boot.inc to also package an SPL if they build one. * Minimum requirement is to set the SPL_BINARY value to add the SPL to the u-boot package as well as into the deploy directory. Signed-off-by: Chase Maupin <Chase.Maupin@ti.com> --- meta/recipes-bsp/u-boot/u-boot.inc | 37 ++++++++++++++++++++++++++++++++--- 1 files changed, 33 insertions(+), 4 deletions(-) diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc index 4180345..dcf5463 100644 --- a/meta/recipes-bsp/u-boot/u-boot.inc +++ b/meta/recipes-bsp/u-boot/u-boot.inc @@ -19,11 +19,22 @@ python () { raise bb.parse.SkipPackage("because UBOOT_MACHINE is not set") } -UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin" -UBOOT_BINARY ?= "u-boot.bin" -UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin" +# Some versions of u-boot use .bin and others use .img. By default use .bin +# but enable individual recipes to change this value. +UBOOT_SUFFIX ?= "bin" +UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}" +UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}" +UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}" UBOOT_MAKE_TARGET ?= "all" +# Some versions of u-boot build an SPL (Second Program Loader) image that +# should be packaged along with the u-boot binary as well as placed in the +# deploy directory. For those versions they can set the following variables +# to allow packaging the SPL. +SPL_BINARY ?= "" +SPL_IMAGE ?= "${SPL_BINARY}-${PV}-${PR}" +SPL_SYMLINK ?= "${SPL_BINARY}-${MACHINE}" + do_compile () { unset LDFLAGS unset CFLAGS @@ -36,15 +47,33 @@ do_install () { install -d ${D}/boot install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE} ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY} + + if [ "x${SPL_BINARY}" != "x" ] + then + install ${S}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE} + ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARY} + fi } FILES_${PN} = "/boot" +# no gnu_hash in uboot.bin, by design, so skip QA +INSANE_SKIP_${PN} = True do_deploy () { - install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE} + install -d ${DEPLOYDIR} + install ${S}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE} cd ${DEPLOYDIR} rm -f ${UBOOT_SYMLINK} ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} + + if [ "x${SPL_BINARY}" != "x" ] + then + install ${S}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE} + rm -f ${DEPLOYDIR}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_SYMLINK} + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_BINARY} + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_SYMLINK} + fi } + addtask deploy before do_build after do_compile -- 1.7.0.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/1] u-boot inc: update inc file for newer u-boot versions 2012-02-03 21:37 ` [PATCH 1/1] " Chase Maupin @ 2012-02-03 21:43 ` Maupin, Chase 2012-02-03 22:53 ` Phil Blundell 2012-02-03 23:26 ` Saul Wold 0 siblings, 2 replies; 6+ messages in thread From: Maupin, Chase @ 2012-02-03 21:43 UTC (permalink / raw) To: Maupin, Chase, openembedded-core@lists.openembedded.org > -----Original Message----- > From: Maupin, Chase > Sent: Friday, February 03, 2012 3:37 PM > To: openembedded-core@lists.openembedded.org > Cc: Maupin, Chase > Subject: [PATCH 1/1] u-boot inc: update inc file for newer u-boot > versions > > * Add support for different suffixes found with later u-boot > versions which have switched from .bin to .img > * Allow recipes that include u-boot.inc to also package an > SPL if they build one. > * Minimum requirement is to set the SPL_BINARY value to add > the SPL to the u-boot package as well as into the deploy > directory. > > Signed-off-by: Chase Maupin <Chase.Maupin@ti.com> > --- > meta/recipes-bsp/u-boot/u-boot.inc | 37 > ++++++++++++++++++++++++++++++++--- > 1 files changed, 33 insertions(+), 4 deletions(-) > > diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes- > bsp/u-boot/u-boot.inc > index 4180345..dcf5463 100644 > --- a/meta/recipes-bsp/u-boot/u-boot.inc > +++ b/meta/recipes-bsp/u-boot/u-boot.inc > @@ -19,11 +19,22 @@ python () { > raise bb.parse.SkipPackage("because UBOOT_MACHINE is > not set") > } > > -UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin" > -UBOOT_BINARY ?= "u-boot.bin" > -UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin" > +# Some versions of u-boot use .bin and others use .img. By > default use .bin > +# but enable individual recipes to change this value. > +UBOOT_SUFFIX ?= "bin" > +UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}" > +UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}" > +UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}" > UBOOT_MAKE_TARGET ?= "all" > > +# Some versions of u-boot build an SPL (Second Program Loader) > image that > +# should be packaged along with the u-boot binary as well as > placed in the > +# deploy directory. For those versions they can set the following > variables > +# to allow packaging the SPL. > +SPL_BINARY ?= "" > +SPL_IMAGE ?= "${SPL_BINARY}-${PV}-${PR}" > +SPL_SYMLINK ?= "${SPL_BINARY}-${MACHINE}" > + > do_compile () { > unset LDFLAGS > unset CFLAGS > @@ -36,15 +47,33 @@ do_install () { > install -d ${D}/boot > install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE} > ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY} > + > + if [ "x${SPL_BINARY}" != "x" ] > + then > + install ${S}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE} > + ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARY} > + fi > } > > FILES_${PN} = "/boot" > +# no gnu_hash in uboot.bin, by design, so skip QA > +INSANE_SKIP_${PN} = True BTW, I believe I can remove this line since I didn't see any QA warnings when building without it. I have seen versions of u-boot.inc that use the INSANE_SKIP and versions that don't so I'm not sure what the right thing is here. > > do_deploy () { > - install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE} > + install -d ${DEPLOYDIR} > + install ${S}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE} > > cd ${DEPLOYDIR} > rm -f ${UBOOT_SYMLINK} > ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} > + > + if [ "x${SPL_BINARY}" != "x" ] > + then > + install ${S}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE} > + rm -f ${DEPLOYDIR}/${SPL_BINARY} > ${DEPLOYDIR}/${SPL_SYMLINK} > + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_BINARY} > + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_SYMLINK} > + fi > } > + > addtask deploy before do_build after do_compile > -- > 1.7.0.4 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/1] u-boot inc: update inc file for newer u-boot versions 2012-02-03 21:43 ` Maupin, Chase @ 2012-02-03 22:53 ` Phil Blundell 2012-02-03 23:26 ` Saul Wold 1 sibling, 0 replies; 6+ messages in thread From: Phil Blundell @ 2012-02-03 22:53 UTC (permalink / raw) To: Patches and discussions about the oe-core layer On Fri, 2012-02-03 at 21:43 +0000, Maupin, Chase wrote: > > +# no gnu_hash in uboot.bin, by design, so skip QA > > +INSANE_SKIP_${PN} = True > > BTW, I believe I can remove this line since I didn't see any QA warnings when building without it. I have seen versions of u-boot.inc that use the INSANE_SKIP and versions that don't so I'm not sure what the right thing is here. If uboot.bin is what the name suggests (i.e. a straight binary file rather than an ELF image) then the GNU_HASH check will be inoperative anyway and there is no need to skip it. I'm also not entirely sure that setting INSANE_SKIP_xx to "True" is going to have any useful effect. If I remember right the value of that variable is meant to be a list of checks to skip and I don't think True is going to match against anything there. So, all in all I think you are probably correct that this line can be safely deleted. p. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/1] u-boot inc: update inc file for newer u-boot versions 2012-02-03 21:43 ` Maupin, Chase 2012-02-03 22:53 ` Phil Blundell @ 2012-02-03 23:26 ` Saul Wold 2012-02-06 14:13 ` Maupin, Chase 1 sibling, 1 reply; 6+ messages in thread From: Saul Wold @ 2012-02-03 23:26 UTC (permalink / raw) To: Patches and discussions about the oe-core layer On 02/03/2012 01:43 PM, Maupin, Chase wrote: >> -----Original Message----- >> From: Maupin, Chase >> Sent: Friday, February 03, 2012 3:37 PM >> To: openembedded-core@lists.openembedded.org >> Cc: Maupin, Chase >> Subject: [PATCH 1/1] u-boot inc: update inc file for newer u-boot >> versions >> >> * Add support for different suffixes found with later u-boot >> versions which have switched from .bin to .img >> * Allow recipes that include u-boot.inc to also package an >> SPL if they build one. >> * Minimum requirement is to set the SPL_BINARY value to add >> the SPL to the u-boot package as well as into the deploy >> directory. >> >> Signed-off-by: Chase Maupin<Chase.Maupin@ti.com> >> --- >> meta/recipes-bsp/u-boot/u-boot.inc | 37 >> ++++++++++++++++++++++++++++++++--- >> 1 files changed, 33 insertions(+), 4 deletions(-) >> >> diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes- >> bsp/u-boot/u-boot.inc >> index 4180345..dcf5463 100644 >> --- a/meta/recipes-bsp/u-boot/u-boot.inc >> +++ b/meta/recipes-bsp/u-boot/u-boot.inc >> @@ -19,11 +19,22 @@ python () { >> raise bb.parse.SkipPackage("because UBOOT_MACHINE is >> not set") >> } >> >> -UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin" >> -UBOOT_BINARY ?= "u-boot.bin" >> -UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin" >> +# Some versions of u-boot use .bin and others use .img. By >> default use .bin >> +# but enable individual recipes to change this value. >> +UBOOT_SUFFIX ?= "bin" >> +UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}" >> +UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}" >> +UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}" >> UBOOT_MAKE_TARGET ?= "all" >> >> +# Some versions of u-boot build an SPL (Second Program Loader) >> image that >> +# should be packaged along with the u-boot binary as well as >> placed in the >> +# deploy directory. For those versions they can set the following >> variables >> +# to allow packaging the SPL. >> +SPL_BINARY ?= "" >> +SPL_IMAGE ?= "${SPL_BINARY}-${PV}-${PR}" >> +SPL_SYMLINK ?= "${SPL_BINARY}-${MACHINE}" >> + >> do_compile () { >> unset LDFLAGS >> unset CFLAGS >> @@ -36,15 +47,33 @@ do_install () { >> install -d ${D}/boot >> install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE} >> ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY} >> + >> + if [ "x${SPL_BINARY}" != "x" ] >> + then >> + install ${S}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE} >> + ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARY} >> + fi >> } >> >> FILES_${PN} = "/boot" >> +# no gnu_hash in uboot.bin, by design, so skip QA >> +INSANE_SKIP_${PN} = True > > BTW, I believe I can remove this line since I didn't see any QA warnings when building without it. I have seen versions of u-boot.inc that use the INSANE_SKIP and versions that don't so I'm not sure what the right thing is here. > If you are going to set it, it should be the list of which tests to skip rather than True. INSANE_SKIP_${PN} = "ldflags" for the gnu_hash check, need to read insane.bbclass to figure that out. Sau! >> >> do_deploy () { >> - install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE} >> + install -d ${DEPLOYDIR} >> + install ${S}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE} >> >> cd ${DEPLOYDIR} >> rm -f ${UBOOT_SYMLINK} >> ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} >> + >> + if [ "x${SPL_BINARY}" != "x" ] >> + then >> + install ${S}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE} >> + rm -f ${DEPLOYDIR}/${SPL_BINARY} >> ${DEPLOYDIR}/${SPL_SYMLINK} >> + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_BINARY} >> + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_SYMLINK} >> + fi >> } >> + >> addtask deploy before do_build after do_compile >> -- >> 1.7.0.4 > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/1] u-boot inc: update inc file for newer u-boot versions 2012-02-03 23:26 ` Saul Wold @ 2012-02-06 14:13 ` Maupin, Chase 0 siblings, 0 replies; 6+ messages in thread From: Maupin, Chase @ 2012-02-06 14:13 UTC (permalink / raw) To: Saul Wold, Patches and discussions about the oe-core layer > -----Original Message----- > From: Saul Wold [mailto:sgw@linux.intel.com] > Sent: Friday, February 03, 2012 5:27 PM > To: Patches and discussions about the oe-core layer > Cc: Maupin, Chase > Subject: Re: [OE-core] [PATCH 1/1] u-boot inc: update inc file for > newer u-boot versions > > On 02/03/2012 01:43 PM, Maupin, Chase wrote: > >> -----Original Message----- > >> From: Maupin, Chase > >> Sent: Friday, February 03, 2012 3:37 PM > >> To: openembedded-core@lists.openembedded.org > >> Cc: Maupin, Chase > >> Subject: [PATCH 1/1] u-boot inc: update inc file for newer u- > boot > >> versions > >> > >> * Add support for different suffixes found with later u-boot > >> versions which have switched from .bin to .img > >> * Allow recipes that include u-boot.inc to also package an > >> SPL if they build one. > >> * Minimum requirement is to set the SPL_BINARY value to add > >> the SPL to the u-boot package as well as into the deploy > >> directory. > >> > >> Signed-off-by: Chase Maupin<Chase.Maupin@ti.com> > >> --- > >> meta/recipes-bsp/u-boot/u-boot.inc | 37 > >> ++++++++++++++++++++++++++++++++--- > >> 1 files changed, 33 insertions(+), 4 deletions(-) > >> > >> diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes- > >> bsp/u-boot/u-boot.inc > >> index 4180345..dcf5463 100644 > >> --- a/meta/recipes-bsp/u-boot/u-boot.inc > >> +++ b/meta/recipes-bsp/u-boot/u-boot.inc > >> @@ -19,11 +19,22 @@ python () { > >> raise bb.parse.SkipPackage("because UBOOT_MACHINE is > >> not set") > >> } > >> > >> -UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin" > >> -UBOOT_BINARY ?= "u-boot.bin" > >> -UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin" > >> +# Some versions of u-boot use .bin and others use .img. By > >> default use .bin > >> +# but enable individual recipes to change this value. > >> +UBOOT_SUFFIX ?= "bin" > >> +UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}" > >> +UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}" > >> +UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}" > >> UBOOT_MAKE_TARGET ?= "all" > >> > >> +# Some versions of u-boot build an SPL (Second Program Loader) > >> image that > >> +# should be packaged along with the u-boot binary as well as > >> placed in the > >> +# deploy directory. For those versions they can set the > following > >> variables > >> +# to allow packaging the SPL. > >> +SPL_BINARY ?= "" > >> +SPL_IMAGE ?= "${SPL_BINARY}-${PV}-${PR}" > >> +SPL_SYMLINK ?= "${SPL_BINARY}-${MACHINE}" > >> + > >> do_compile () { > >> unset LDFLAGS > >> unset CFLAGS > >> @@ -36,15 +47,33 @@ do_install () { > >> install -d ${D}/boot > >> install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE} > >> ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY} > >> + > >> + if [ "x${SPL_BINARY}" != "x" ] > >> + then > >> + install ${S}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE} > >> + ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARY} > >> + fi > >> } > >> > >> FILES_${PN} = "/boot" > >> +# no gnu_hash in uboot.bin, by design, so skip QA > >> +INSANE_SKIP_${PN} = True > > > > BTW, I believe I can remove this line since I didn't see any QA > warnings when building without it. I have seen versions of u- > boot.inc that use the INSANE_SKIP and versions that don't so I'm > not sure what the right thing is here. > > > If you are going to set it, it should be the list of which tests to > skip > rather than True. > > INSANE_SKIP_${PN} = "ldflags" for the gnu_hash check, need to read > insane.bbclass to figure that out. Thanks for the feedback. I'll resend this patch without the INSANE_SKIP > > Sau! > > >> > >> do_deploy () { > >> - install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE} > >> + install -d ${DEPLOYDIR} > >> + install ${S}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE} > >> > >> cd ${DEPLOYDIR} > >> rm -f ${UBOOT_SYMLINK} > >> ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} > >> + > >> + if [ "x${SPL_BINARY}" != "x" ] > >> + then > >> + install ${S}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE} > >> + rm -f ${DEPLOYDIR}/${SPL_BINARY} > >> ${DEPLOYDIR}/${SPL_SYMLINK} > >> + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_BINARY} > >> + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_SYMLINK} > >> + fi > >> } > >> + > >> addtask deploy before do_build after do_compile > >> -- > >> 1.7.0.4 > > > > > > _______________________________________________ > > Openembedded-core mailing list > > Openembedded-core@lists.openembedded.org > > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded- > core > > ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-02-06 14:21 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-02-03 21:37 [RFC PATCH 0/1] u-boot inc: update inc file for newer u-boot versions Chase Maupin 2012-02-03 21:37 ` [PATCH 1/1] " Chase Maupin 2012-02-03 21:43 ` Maupin, Chase 2012-02-03 22:53 ` Phil Blundell 2012-02-03 23:26 ` Saul Wold 2012-02-06 14:13 ` Maupin, Chase
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox