kernel-yocto: consolidated pull request
cover kernel-yocto: consolidated pull request
Richard,
Here's my next round of incremental fixes and updates. All are relatively minor, so there's no sense sitting on them while I work on some other changes.
These two are tweaks to the Kconfig audit warnings that went into M3, and will remove a config warning and the other will not uncessarily warn people who've done nothing wrong :)
linux-yocto: fix qemux86-64 config warning
kernel-yocto: inhibit BSP description warnings for custom linux-yocto kernels
I also have some OcteonIII support additions to linux-yocto-3.14, and finally a minor patch performance improvement. We aren't done on this front, but again, no sense sitting on changes.
Cheers,
Bruce
The following changes since commit bf1a68e97f2069a4f66664c351d4bafd416358eb:
taglib: Fix cmake floating dependency on boost (2015-03-02 18:06:53 +0000)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib zedd/kernel
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=zedd/kernel
Bruce Ashfield (4):
linux-yocto: fix qemux86-64 config warning
kernel-yocto: inhibit BSP description warnings for custom linux-yocto kernels linux-yocto/3.14: OcteonIII support
kern-tools: improve patch application performance
meta/classes/kernel-yocto.bbclass | 13 +++++++------ meta/recipes-kernel/kern-tools/kern-tools-native_git.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-rt_3.14.bb | 5 +++-- meta/recipes-kernel/linux/linux-yocto-tiny_3.14.bb | 3 ++- meta/recipes-kernel/linux/linux-yocto-tiny_3.19.bb | 3 ++- meta/recipes-kernel/linux/linux-yocto.inc | 1 + meta/recipes-kernel/linux/linux-yocto_3.14.bb | 17 +++++++++-------- meta/recipes-kernel/linux/linux-yocto_3.19.bb | 3 ++- 8 files changed, 27 insertions(+), 20 deletions(-)
Signature · 1 line
2.1.0
PATCH 1/4 linux-yocto: fix qemux86-64 config warning
During the 3.19 update a 32 bit option in the 64 bit config was missed, which results in the option being dropped (and reported as a warning):
Value requested for CONFIG_PCI_GOANY not in final ".config" Requested value: "CONFIG_PCI_GOANY=y"
Actual value set: ""
So we split the 32bit only drivers out of the common driver include and the problem goes away.
[YOCTO: 7354]
--- meta/recipes-kernel/linux/linux-yocto-tiny_3.19.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_3.19.bb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-kernel/linux/linux-yocto-tiny_3.19.bb +1 -1
@@ -9,7 +9,7 @@ LINUX_VERSION ?= "3.19" KMETA = "meta" SRCREV_machine ?= "43b9eced9ba8a57add36af07736344dcc383f711" -SRCREV_meta ?= "8897ef68b30e7426bc1d39895e71fb155d694974" +SRCREV_meta ?= "f7a81274b461d0c748964d75c24bea8574d350fb" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_3.19.bb +1 -1
@@ -19,7 +19,7 @@ SRCREV_machine_qemux86 ?= "43b9eced9ba8a57add36af07736344dcc383f711" SRCREV_machine_qemux86-64 ?= "43b9eced9ba8a57add36af07736344dcc383f711" SRCREV_machine_qemumips64 ?= "b7ab9d4bac55415f125c81f529dbbefb07de98ad" SRCREV_machine ?= "43b9eced9ba8a57add36af07736344dcc383f711" -SRCREV_meta ?= "8897ef68b30e7426bc1d39895e71fb155d694974" +SRCREV_meta ?= "f7a81274b461d0c748964d75c24bea8574d350fb" SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.19.git;bareclone=1;branch=${KBRANCH},${KMETA};name=machine,meta"
Signature · 1 line
2.1.0
PATCH 2/4 kernel-yocto: inhibit BSP description warnings for custom linux-yocto kernels
In reply to Bruce AshfieldWe don't require that a yocto custom kernel + defconfig have a full BSP description (but of course it would be better if they did). Since this isn't a requirement, we shouldn't alarm users by generating a BSP description warning.
To implement this, we add a bsp audit level flag (like the one that exists for kconfig audits), and only set it to activate in the versioned linux-yocto recipes.
[YOCTO: #7370]
--- meta/classes/kernel-yocto.bbclass | 13 +++++++------ meta/recipes-kernel/linux/linux-yocto-rt_3.14.bb | 1 + meta/recipes-kernel/linux/linux-yocto-tiny_3.14.bb | 1 + meta/recipes-kernel/linux/linux-yocto-tiny_3.19.bb | 1 + meta/recipes-kernel/linux/linux-yocto.inc | 1 + meta/recipes-kernel/linux/linux-yocto_3.14.bb | 1 + meta/recipes-kernel/linux/linux-yocto_3.19.bb | 1 + 7 files changed, 13 insertions(+), 6 deletions(-)
meta/classes/kernel-yocto.bbclass +7 -6
@@ -265,6 +265,7 @@ python do_kernel_configcheck() { ret, result = oe.utils.getstatusoutput("%s%s" % (pathprefix, cmd)) config_check_visibility = int(d.getVar( "KCONF_AUDIT_LEVEL", True ) or 0) + bsp_check_visibility = int(d.getVar( "KCONF_BSP_AUDIT_LEVEL", True ) or 0) # if config check visibility is non-zero, report dropped configuration values mismatch_file = "${S}/" + kmeta + "/" + "mismatch.cfg"
@@ -283,13 +284,13 @@ python do_kernel_configcheck() { bb.warn( "[kernel config]: BSP specified non-hw configuration:\n\n%s" % results) bsp_desc = "${S}/" + kmeta + "/" + "top_tgt" - if os.path.exists(bsp_desc): + if os.path.exists(bsp_desc) and bsp_check_visibility > 1: with open (bsp_desc, "r") as myfile: - bsp_tgt = myfile.read() - m = re.match("^(.*)scratch.obj(.*)$", bsp_tgt) - if not m is None: - bb.warn( "[kernel]: An auto generated BSP description was used, this normally indicates a misconfiguration.\n" + - "Check that your machine (%s) has an associated kernel description." % "${MACHINE}" ) + bsp_tgt = myfile.read() + m = re.match("^(.*)scratch.obj(.*)$", bsp_tgt) + if not m is None: + bb.warn( "[kernel]: An auto generated BSP description was used, this normally indicates a misconfiguration.\n" + + "Check that your machine (%s) has an associated kernel description." % "${MACHINE}" ) } # Ensure that the branches (BSP and meta) are on the locations specified by
meta/recipes-kernel/linux/linux-yocto-rt_3.14.bb +1 -0
@@ -14,6 +14,7 @@ LINUX_VERSION ?= "3.14.29" PV = "${LINUX_VERSION}+git${SRCPV}" KMETA = "meta" +KCONF_BSP_AUDIT_LEVEL = "2" LINUX_KERNEL_TYPE = "preempt-rt"
meta/recipes-kernel/linux/linux-yocto-tiny_3.14.bb +1 -0
@@ -7,6 +7,7 @@ require recipes-kernel/linux/linux-yocto.inc LINUX_VERSION ?= "3.14.29" KMETA = "meta" +KCONF_BSP_AUDIT_LEVEL = "2" SRCREV_machine ?= "f65678ef48c5d41af914d2769e4dd01411c1df96" SRCREV_meta ?= "6eddbf47875ef48ddc5864957a7b63363100782b"
meta/recipes-kernel/linux/linux-yocto-tiny_3.19.bb +1 -0
@@ -7,6 +7,7 @@ require recipes-kernel/linux/linux-yocto.inc LINUX_VERSION ?= "3.19" KMETA = "meta" +KCONF_BSP_AUDIT_LEVEL = "2" SRCREV_machine ?= "43b9eced9ba8a57add36af07736344dcc383f711" SRCREV_meta ?= "f7a81274b461d0c748964d75c24bea8574d350fb"
meta/recipes-kernel/linux/linux-yocto.inc +1 -0
@@ -28,6 +28,7 @@ SRCREV_FORMAT ?= "meta_machine" # 1: report options that are specified, but not in the final config # 2: report options that are not hardware related, but set by a BSP KCONF_AUDIT_LEVEL ?= "1" +KCONF_BSP_AUDIT_LEVEL ?= "0" LINUX_VERSION_EXTENSION ?= "-yocto-${LINUX_KERNEL_TYPE}"
meta/recipes-kernel/linux/linux-yocto_3.14.bb +1 -0
@@ -28,6 +28,7 @@ LINUX_VERSION ?= "3.14.29" PV = "${LINUX_VERSION}+git${SRCPV}" KMETA = "meta" +KCONF_BSP_AUDIT_LEVEL = "2" COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64"
meta/recipes-kernel/linux/linux-yocto_3.19.bb +1 -0
@@ -28,6 +28,7 @@ LINUX_VERSION ?= "3.19" PV = "${LINUX_VERSION}+git${SRCPV}" KMETA = "meta" +KCONF_BSP_AUDIT_LEVEL = "2" COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64"
Signature · 1 line
2.1.0
PATCH 3/4 linux-yocto/3.14: OcteonIII support
In reply to Bruce AshfieldWith these SRCREV updates, we add the following support to the kernel:
The following has been verified with the branch sources:
On 68xx:
* SGMII, XAUI Packet IO interfaces.
* PCIe devices
* EHCI/OHCI USB driver
On 78XX:
* Ran LTP testsuite
* SGMII, XAUI Packet IO interfaces
* MMC driver (which covers GPIO interrupts in the driver)
* PCIe devices
* XHCI USB driver
--- meta/recipes-kernel/linux/linux-yocto-rt_3.14.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto-tiny_3.14.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_3.14.bb | 16 ++++++++-------- 3 files changed, 11 insertions(+), 11 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.14.bb +2 -2
@@ -3,8 +3,8 @@ KBRANCH_qemuppc ?= "standard/preempt-rt/qemuppc" require recipes-kernel/linux/linux-yocto.inc -SRCREV_machine ?= "fbe20225d041672b110e93c3ad171737b69e2126" -SRCREV_machine_qemuppc ?= "11f38e2b2a63c5b1138617c197b3f5b96cd74a65" +SRCREV_machine ?= "eb2c9c93de9b806f2a52c26bba229089a7a71385" +SRCREV_machine_qemuppc ?= "bd470d1c8337323b0f7d1529df70a1c68108df0b" SRCREV_meta ?= "6eddbf47875ef48ddc5864957a7b63363100782b" SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.14.git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
meta/recipes-kernel/linux/linux-yocto-tiny_3.14.bb +1 -1
@@ -9,7 +9,7 @@ LINUX_VERSION ?= "3.14.29" KMETA = "meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine ?= "f65678ef48c5d41af914d2769e4dd01411c1df96" +SRCREV_machine ?= "3bab81113682d3a5ffc8ea60cf770beed4831492" SRCREV_meta ?= "6eddbf47875ef48ddc5864957a7b63363100782b" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_3.14.bb +8 -8
@@ -11,14 +11,14 @@ KBRANCH_qemux86 ?= "standard/common-pc/base" KBRANCH_qemux86-64 ?= "standard/common-pc-64/base" KBRANCH_qemumips64 ?= "standard/mti-malta64" -SRCREV_machine_qemuarm ?= "1a9f9edade8d8c0120d2f47dfd15edd41c7a3439" -SRCREV_machine_qemuarm64 ?= "f65678ef48c5d41af914d2769e4dd01411c1df96" -SRCREV_machine_qemumips ?= "68e9a20079f3cc333c3b7d945bb65fa74772aa37" -SRCREV_machine_qemuppc ?= "a992646d267f012f87967f1c8b88608c950c7e58" -SRCREV_machine_qemux86 ?= "2f37d969c5d3b28d936ac3533862e2ab034d4f37" -SRCREV_machine_qemux86-64 ?= "f65678ef48c5d41af914d2769e4dd01411c1df96" -SRCREV_machine_qemumips64 ?= "e93012684a290e9b60d61f58c2dbd36ab3f2e549" -SRCREV_machine ?= "f65678ef48c5d41af914d2769e4dd01411c1df96" +SRCREV_machine_qemuarm ?= "38d0249598bef8263f1f1e280badf6b92a0bc668" +SRCREV_machine_qemuarm64 ?= "3bab81113682d3a5ffc8ea60cf770beed4831492" +SRCREV_machine_qemumips ?= "d2138247c6f1ba8f082f7c2b0d4a6a4efb0cf908" +SRCREV_machine_qemuppc ?= "2ec2927314d58a012403cbaccdf0a8a1f5c5d666" +SRCREV_machine_qemux86 ?= "9ed9a63eeafbcbee0e378e304a1029bb14d45697" +SRCREV_machine_qemux86-64 ?= "3bab81113682d3a5ffc8ea60cf770beed4831492" +SRCREV_machine_qemumips64 ?= "afdaa94d540bf671f4d4d198ec6b891df22fb323" +SRCREV_machine ?= "3bab81113682d3a5ffc8ea60cf770beed4831492" SRCREV_meta ?= "6eddbf47875ef48ddc5864957a7b63363100782b" SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.14.git;bareclone=1;branch=${KBRANCH},${KMETA};name=machine,meta"
Signature · 1 line
2.1.0
PATCH 4/4 kern-tools: improve patch application performance
In reply to Bruce AshfieldUpdate the SRCREV for the following incremental improvement in patch processing time:
kgit-meta: skip patches on non-leaf nodes
In a similar way as commit 0768d697 [kgit-meta: dont run kgit-s2q for
non-leaf nodes], we can save even more processing time by not even analysing and linking patches if we aren't on the leaf node of the tree.
This early exit can save nearly 95% of the time required to "patch" a tree when no changes are actually applied.
--- meta/recipes-kernel/kern-tools/kern-tools-native_git.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-kernel/kern-tools/kern-tools-native_git.bb +1 -1
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://git/tools/kgit;beginline=5;endline=9;md5=d8d1d729a70c DEPENDS = "git-native" -SRCREV = "cab17f884998b43692244a863dea6f505c7f67af" +SRCREV = "0c51a3d02fa54726141f32824b11d0676960e0a5" PR = "r12" PV = "0.2+git${SRCPV}"
Signature · 1 line
2.1.0