[yocto] Where is 'my' defconfig ?

Bruce Ashfield bruce.ashfield at windriver.com
Sun Feb 13 20:11:00 PST 2011


On 11-02-13 8:40 AM, Chris Tapp wrote:
> I've created my own machine ('MyMachine') that has virtual/kernel set to
> 'linux-yocto-stable'. I would now like to change the kernel
> configuration to enable some drivers that aren't enabled by default.
>
> This leads me to a couple of questions:
>
> 1) Where is the defconfig file for 'linux-yocto-stable'? Or does this
> just use the default configuration provided by the kernel?

A defconfig is constructed on the fly for each board, using
a series of inherited configuration values that are grouped
to provide some sort of useful functionality.  On top of being
useful, they provide a common / consistent set of configuration
values for BSPs that have been explicitly selected to meet some
sort of functional requirement. As a result, test results are
transitive (largely), a common feature set is available for a
a supported board and a single configuration change can be
made across all boards immediately.

On top of that common base are the board specific configuration.
In the perfect world, these are specific to the hardware of the
board and are not logical in nature. You'll note the 'perfect'.
Some boards do deviate from the common base. After configuring
a board, an audit is run and a notification is generated if a board
overrides a common feature, but it is just a notification.

> 2) Where do I place the defconfig file for MyMachine? Should this be in
> meta/recipes-kernel/linux/linux-yocto-stable/MyMachine/defconfig?

The kernel architecture docs should have this covered
in the section about cloning an existing BSP. I don't point
this out as RTFM, but more along the lines of 'if you can,
check and see if it is there, and if it works for you'.

But the jist of it is that a defconfig placed in that directory
and added to the SRC_URI will definitely work. But it isn't
ideal, since it will clobber all common settings. Since this
is your board, you are definitely free to do just that.

If you want to just add your hardware settings, then you can
create a configuration fragment. A configuration fragment is
just a file <your name here>.cfg, and it contains standard
Kconfig values, but doesn't have to be (and shouldn't) be
a complete configuration.

Put it in that same directory, and add it to the SRC_URI.
It will be picked up and added to the constructed configuration.

Hope that helps,

Bruce

>
> Chris Tapp
>
> opensource at keylevel.com
> www.keylevel.com
>
>
>
> _______________________________________________
> yocto mailing list
> yocto at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto




More information about the yocto mailing list