[yocto] [meta-raspberrypi][PATCH 1/2] linux-raspberrypi: support configuration fragments

Alex J Lennon ajlennon at gmail.com
Tue Aug 11 12:20:37 PDT 2015


On 11/08/2015 19:54, Petter Mabäcker wrote:
> 2015-08-11 19:04 skrev Alex J Lennon:
> 
>> - remove placeholder defconfig and custom copying logic
>> - use KBUILD_DEFCONFIG for default in-tree configurations instead
>> - do not replace all Yocto configured settings in do_configure_prepen
>>
>> see: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7474
>>
>> Signed-off-by: Alex J Lennon <ajlennon at dynamicdevices.co.uk <mailto:ajlennon at dynamicdevices.co.uk>>
>> ---
>>  recipes-kernel/linux/linux-raspberrypi.inc       | 15 ++++-----------
>>  recipes-kernel/linux/linux-raspberrypi/defconfig |  1 -
>>  recipes-kernel/linux/linux.inc                   |  6 +++---
>>  3 files changed, 7 insertions(+), 15 deletions(-)
>>  delete mode 100644 recipes-kernel/linux/linux-raspberrypi/defconfig
>>
>> diff --git a/recipes-kernel/linux/linux-raspberrypi.inc b/recipes-kernel/linux/linux-raspberrypi.inc
>> index 7e36408..e38d905 100644
>> --- a/recipes-kernel/linux/linux-raspberrypi.inc
>> +++ b/recipes-kernel/linux/linux-raspberrypi.inc
>> @@ -6,17 +6,14 @@ SECTION = "kernel"
>>  LICENSE = "GPLv2"
>>  LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
>>  
>> -SRC_URI += " \
>> -        file://defconfig \
>> -        "
>> -
>>  COMPATIBLE_MACHINE = "raspberrypi"
>>  
>>  PV = "${LINUX_VERSION}+git${SRCREV}"
>>  
>> -# NOTE: For now we pull in the default config from the RPi kernel GIT tree.
>> -KERNEL_DEFCONFIG_raspberrypi ?= "bcmrpi_defconfig"
>> -KERNEL_DEFCONFIG_raspberrypi2 ?= "bcm2709_defconfig"
>> +KMACHINE ?= "${MACHINE}"
>> +KCONFIG_MODE = "--alldefconfig"
>> +KBUILD_DEFCONFIG_raspberrypi ?= "bcmrpi_defconfig"
>> +KBUILD_DEFCONFIG_raspberrypi2 ?= "bcm2709_defconfig"
>>  
>>  # CMDLINE for raspberrypi
>>  CMDLINE = "dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait"
>> @@ -38,10 +35,6 @@ python __anonymous () {
>>              d.setVar("DEPENDS", depends)
>>  }
>>  
>> -do_kernel_configme_prepend() {
>> -    install -m 0644 ${S}/arch/${ARCH}/configs/${KERNEL_DEFCONFIG} ${WORKDIR}/defconfig || die "No default configuration for ${MACHINE} / ${KERNEL_DEFCONFIG} available."
>> -}
>> -
>>  do_install_prepend() {
>>      install -d ${D}/lib/firmware
>>  }
>> diff --git a/recipes-kernel/linux/linux-raspberrypi/defconfig b/recipes-kernel/linux/linux-raspberrypi/defconfig
>> deleted file mode 100644
>> index ecbf32c..0000000
>> --- a/recipes-kernel/linux/linux-raspberrypi/defconfig
>> +++ /dev/null
>> @@ -1 +0,0 @@
>> -# Dummy file to get through do_kernel_configme.
>> diff --git a/recipes-kernel/linux/linux.inc b/recipes-kernel/linux/linux.inc
>> index fae78b7..103512b 100644
>> --- a/recipes-kernel/linux/linux.inc
>> +++ b/recipes-kernel/linux/linux.inc
>> @@ -33,8 +33,7 @@ kernel_configure_variable() {
>>  }
>>  
>>  do_configure_prepend() {
>> -    # Clean .config
>> -    echo "" > ${B}/.config
>> +    mv -f ${B}/.config ${B}/.config.patched
>>      CONF_SED_SCRIPT=""
>>  
>>      # oabi / eabi support
>> @@ -109,7 +108,8 @@ do_configure_prepend() {
>>  
>>      # Keep this the last line
>>      # Remove all modified configs and add the rest to .config
>> -    sed -e "${CONF_SED_SCRIPT}" < '${WORKDIR}/defconfig' >> '${B}/.config'
>> +    sed -e "${CONF_SED_SCRIPT}" < '${B}/.config.patched' >> '${B}/.config'
>> +    rm -f ${B}/.config.patched
>>  
>>      yes '' | oe_runmake oldconfig
>>  }
>> -- 1.9.1
> 
> Nice, some small comments only. Please write a short summary of the
> feature (kernel-yocto: allow in-tree defconfig) but keep the bugzilla as
> a reference for further info. Always good to have some background found

This is seems a significant core change so I wanted to make sure these
individual changes were as easily searchable as possible in case any
problems arise in future. Can you provide an example of what you are
suggesting for the commit msg?

> directly in the commit msg itself. Have you tested it using both
> poky:master and poky:fido?

Rpi2 fido 3.18.16 with/without sound patch, 4.1.3 with/without sound patch.

BR,

Alex



More information about the yocto mailing list