Skip to contentSkip to conversation

kernel-yocto: consolidated pull request

PATCH New Bruce Ashfield 1 participant 5 messages Mar 2, 2015

lore
Share & tools
lore
#0 lore raw

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
#1 lore raw

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
index dba163e006d3..1997e30a2589 100644
@@ -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
index 044ee7f524ca..f856d19f938f 100644
@@ -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
#2 lore raw

PATCH 2/4 kernel-yocto: inhibit BSP description warnings for custom linux-yocto kernels

In reply to Bruce Ashfield

We 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
index c8d1e95df348..8db489964ed2 100644
@@ -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
index 8e2189654bc5..bd61c4a927c8 100644
@@ -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
index db9ad738c3ab..d110297246c1 100644
@@ -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
index 1997e30a2589..d10449aab365 100644
@@ -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
index 79b3f256f4bc..c62f8ca97de4 100644
@@ -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
index ac0143089795..9cdd3eea0d5c 100644
@@ -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
index f856d19f938f..f1bf3bea9016 100644
@@ -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
#3 lore raw

PATCH 3/4 linux-yocto/3.14: OcteonIII support

In reply to Bruce Ashfield

With 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
index bd61c4a927c8..4080aca495db 100644
@@ -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
index d110297246c1..f6b95a218ad7 100644
@@ -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
index 9cdd3eea0d5c..0d0d8b2ee22a 100644
@@ -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
#4 lore raw

PATCH 4/4 kern-tools: improve patch application performance

In reply to Bruce Ashfield

Update 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
index 80d26f98749d..131c5e9d0e2b 100644
@@ -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