I have created an git repo for the kernel config fragments we produced a while ago, this is at git://git.linaro.org/kernel/configs.git
The config-core-tracking branch in this repo is intended to be added to the linux-linaro-core-tracking branch and so be available in all Linaro kernels. This currently provides three config fragment files:
linaro/configs/linaro-base.conf Config options common to all Linaro kernels
linaro/configs/ubuntu.conf Config options for all Ubuntu kernels
linaro/configs/android.conf Config options for all Android kernels
In addition to these, a board specific config fragment is required to produce a final kernel config. This may be made available by a Landing Team's kernel tree (I have done this for vexpress [1]) or; for experimental purposes, or to support legacy platforms, I have a separate config-boards-tracking branch of the new configs.git. (Currently this contains the Origen and iMX5 fragments produced a while ago.)
To create an Ubuntu kernel config from these fragments for a device called $BOARD, you need to run a command like:
ARCH=arm scripts/kconfig/merge_config.sh \ linaro/configs/linaro-base.conf linaro/configs/ubuntu.conf \ linaro/configs/$BOARD.conf
For Android, s/ubuntu/android/ in the above.
At some point soonish, I hope to come up with a mechanism whereby Android builds have the option to dynamically generate their kernel config as above. John Rigby is planning on adding a similar option to the Ubuntu packaging jobs.
Hopefully this work will enable:
- easier management of system wide config settings required by working group output or Linaro policy - place board specific configuration in the hands of the people maintaining that boards kernel - more consistent kernel builds, so teams can test in the same environment as Linaro's final releases
I intend to maintain git://git.linaro.org/kernel/configs.git and will keep separate non 'tracking' branches for older kernel versions (I currently have branches for 3.4).