[yocto] Problem with BSP supporting different machines
Markus Hubig
mhubig at imko.de
Fri Aug 10 08:01:01 PDT 2012
On Thu, Aug 09, 2012 at 03:10:36PM -0400, Bruce Ashfield wrote:
> On 12-08-09 01:24 PM, Bruce Ashfield wrote:
> >On 12-08-09 12:32 PM, Markus Hubig wrote:
> >>On Thu, Aug 09, 2012 at 10:48:30AM -0400, Bruce Ashfield wrote:
> >>>On Thu, Aug 9, 2012 at 10:46 AM, Markus Hubig<mhubig at imko.de> wrote:
> >>
> >>If I ran the kconf_check manually I get an output, but not a very
> >>promissing one :(
> >>
> >>| This BSP sets 4 invalid/obsolete kernel options.
> >>| These config options are not offered anywhere within this kernel.
> >>| The full list can be found in your workspace at:
> >>| linux/meta/cfg/standard/default/portuxg20/invalid.cfg
> >>|
> >>| This BSP sets 10 kernel options that are possibly non-hardware related.
> >>| The full list can be found in your workspace at:
> >>| linux/meta/cfg/standard/default/portuxg20/specified_non_hdw.cfg
> >>|
> >>| WARNING: There were 17 hardware options requested that do not
> >>| have a corresponding value present in the final ".config" file.
> >>| This probably means you aren't getting the config you wanted.
> >>| The full list can be found in your workspace at:
> >>| linux/meta/cfg/standard/default/portuxg20/mismatch.cfg
> >>|
> >>| Waiting a second to make sure you get a chance to see this...
> >>| ** NOTE: There were 0 required options requested that do not
>
> That's not all that bad for a first cut, that last "0" report is
> also fine, since nothing uses the "required" tag in denzil.
Hmm ok ...
> >>>If this is the same BSP, I can have a look and see about solving the
> >>>two problems at once.
> >>
> >>This would be very nice! I really stuck here ... The BSP can be found at:
> >>
> >>https://bitbucket.org/imko/meta-stamp9g20 (branch denzil)
> >
> >I have a clone and started a build. When I have some results .. I'll
> >send more email.
>
> Aha. yes, I knew this looked familiar. It's a fall out from the old
> branch based triggers for the tools. Your BSP is configuring properly,
> the report just isn't all that useful.
>
> It is (largely) fixed by this commit to the kern tools:
>
> http://git.yoctoproject.org/cgit/cgit.cgi/yocto-kernel-tools/commit/?id=4b5dd4d5b541ff98110e8b58f6d33923893e0950
>
> Porting this to denzil .. may be possible, and I can give it a try,
> but I can't drag back all of the kern-tools enhancements, and many
> of the changes depend on associated changes in other scripts.
Hmm no it's fine. I switched to 1.3_M3 and run a test build at the moment,
to give it a try ... (Hmm I actually didn't know if this commit is included
in the kernel 3.2 the 1.3_M3 branch uses ... )
Hmm just switching to the 1.3_M3 branch doesn't solve the warning, instead
the kernel build failed with error:
| DEBUG: Executing shell function do_kernel_configme
| [INFO] doing kernel configme
| [INFO] Configuring target/machine combo: "standard/portuxg20"
| [INFO] collecting configs in ./meta/meta-series
| [##################################################] (completed in 4 seconds)
| ERROR: could not sanitize configuration fragments
| errors are logged in meta/cfg/standard/portuxg20/config.log
| ERROR: Function failed: do_kernel_configme (see poky/build/tmp/work/\
| portuxg20-poky-linux-gnueabi/linux-yocto-3.2.18+git1+ \
| 486f7aec824b4127e91ef53228823e996b3696f0_1+\
| 7cc31a952f78b8f8e8469eed93c23e9675a8eeb5-r4.0.1/temp/ \
| log.do_kernel_configme.12375 for further information)
I checked at meta/cfg/standard/portuxg20/config.log and found this:
| ...
| [INFO] Sanitizing meta/cfg/kernel-cache/features/fuse/fuse.cfg
| [INFO] Sanitizing meta/cfg/kernel-cache/ktypes/standard/standard.cfg
| [INFO] Sanitizing meta/cfg/kernel-cache/cfg/devtmpfs.cfg
| [INFO] Sanitizing meta/cfg/kernel-cache/cfg/debugfs.cfg
| [INFO] Sanitizing meta/cfgportuxg20
| [ERROR] Kern frag does not exist
Hmm strange ... Now I cloned the tzanussi/yocto-bsp-master-update branch
from pocky-contrib (since I read the patch request from tzanussi on the ML)
and looked what his yocto-bsp script did.
The main difference I spotted was in stamp9g20-standard.scc
| define KMACHINE stamp9g20
| define KTYPE standard
| define KARCH arm
|
| include ktypes/standard
|-branch stamp9g20
|
| include stamp9g20.scc
But removing the branch statement didn't change the error (on the 1.3_M3
branch) so I switched to using the shine new 3.4 kernel.
But -> same error! OK maybe the 1.3_M3 is not that stable at all, so back
to denzil and 3.2. But with the branch statement removed ...
Damn now I hit another strange error:
| arm-poky-linux-gnueabi-ld: cannot find -lgcc
| make: *** [u-boot] Error 1
| ERROR: oe_runmake failed
See https://bitbucket.org/imko/meta-stamp9g20/changeset/ebf8f19ea1932e1b6ed33e549023be44618481e7
for further details ...
And the warnings 'still stays on' ...
> If you were to use a completely new branch (versus the re-use), the
> warning would also go a way (versus my current suggestion of
> ignoring it).
To do this I had to make some modification to my linux-yocto_3.2.bbappend
file, like this, right?
| COMPATIBLE_MACHINE_stamp9g20 = "stamp9g20"
| -KBRANCH_stamp9g20 = "standard/default/arm-versatile-926ejs"
| +KBRANCH_stamp9g20 = "standard/default/arm-versatile-926ejs/stamp9g20"
| +YOCTO_KERNEL_EXTERNAL_BRANCH_stamp9g20 = "standard/default/arm-versatile-926ejs/stamp9g20"
| KMACHINE_stamp9g20 = "stamp9g20"
But do I need to set a YOCTO_KERNEL_EXTERNAL_BRANCH_stamp9g20?
> Was this BSP generating using the tooling, or by hand ?
Initially I tried to build one by hand but then I learned about the yocto-bsp
so I created the BSP with the tool and included my modifications.
Cheers, Markus
More information about the yocto
mailing list