All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] linux-yocto: (hopefully) final fixes
@ 2012-04-13 20:55 Bruce Ashfield
  2012-04-13 20:55 ` [PATCH 1/2] linux-yocto/3.2: add igb support to romley Bruce Ashfield
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Bruce Ashfield @ 2012-04-13 20:55 UTC (permalink / raw)
  To: richard.purdie; +Cc: openembedded-core, saul.wold

Richard/Saul,

Here are two last commits for linux-yocto. One is a pending
SRCREV update for the romley. It's included to make sure that the
meta branch head matches the SRCREVs. Otherwise, we are relying
on branch renaming for everyone. There's no risk, and this is already
in use by the BSP layer.

The second commit is a change that I've been working on all week
with Andrea and his work on extending linux-yocto-tiny. The 
work that was done to support out of tree features was missing
.cfg and defconfig support. This meant that you could run into
patching issues.

To fix it, I pulled back changes that I made a few weeks ago 
to allow all types of fragments, features, and defconfigs to
be supported. The diffstat is largely a movement of code from 
the recipe back to the tools (where it belonged), but the intent
stays the same.

I've tested this on every use case I could find ..

  - core BSPs
  - Nitin's x32 use case
  - Andrea's use case
  - kernel.org test case
  - Constructed tests with fragments, nested features, etc.

Andrea has also tested his use case.

These all pass, and the code fixes an intended feature for 1.2 as
well as fixing the immediate bug in question.

This is for YOCTO 2250.

Cheers,

Bruce

cc: andrea.adami@gmail.com


The following changes since commit 023a12b70b1bbbd3625ab5a6df2ae9943a14bea5:

  linux-yocto/meta-yocto: update hardware reference SRCREVs (2012-04-13 16:35:59 -0400)

are available in the git repository at:
  git://git.pokylinux.org/poky-contrib zedd/kernel-oe
  http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=zedd/kernel-oe

Bruce Ashfield (2):
  linux-yocto/3.2: add igb support to romley
  linux-yocto: allow .cfg, .scc, .patch and defconfigs to be processed
    in order

 meta/classes/kernel-yocto.bbclass                  |   74 ++------------------
 .../kern-tools/kern-tools-native_git.bb            |    2 +-
 meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb    |    2 +-
 meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb  |    2 +-
 meta/recipes-kernel/linux/linux-yocto_3.2.bb       |    2 +-
 5 files changed, 11 insertions(+), 71 deletions(-)

-- 
1.7.5.4




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/2] linux-yocto/3.2: add igb support to romley
  2012-04-13 20:55 [PATCH 0/2] linux-yocto: (hopefully) final fixes Bruce Ashfield
@ 2012-04-13 20:55 ` Bruce Ashfield
  2012-04-13 20:55 ` [PATCH 2/2] linux-yocto: allow .cfg, .scc, .patch and defconfigs to be processed in order Bruce Ashfield
  2012-04-13 22:15 ` [PATCH 0/2] linux-yocto: (hopefully) final fixes Saul Wold
  2 siblings, 0 replies; 4+ messages in thread
From: Bruce Ashfield @ 2012-04-13 20:55 UTC (permalink / raw)
  To: richard.purdie; +Cc: openembedded-core, saul.wold

Updating the 3.2 recipe SRCREVs to pickup the following meta change:

[
    meta: Add igb.scc to Romley

    Romley machine has 82580 Giga bit Ethernet Controller.
    Add the relavent Nic driver to it.

    Signed-off-by: Kishore Bodke <kishore.k.bodke@intel.com>
]

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
---
 meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb   |    2 +-
 meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb |    2 +-
 meta/recipes-kernel/linux/linux-yocto_3.2.bb      |    2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb b/meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb
index 94ada7e..efc4611 100644
--- a/meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb
+++ b/meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb
@@ -16,7 +16,7 @@ LINUX_KERNEL_TYPE = "preempt-rt"
 
 SRCREV_machine ?= "32ecb53e9ff759bbd297a10712b62a6575daaf86"
 SRCREV_machine_qemuppc ?= "0d5625bb868cc2471d5dd49eb7abe7eb5fe1044b"
-SRCREV_meta ?= "59f350ec3794e19fa806c1b73749d851f8ebf364"
+SRCREV_meta ?= "135c75bf9615334b5b8bb9108d612fe7dfbdb901"
 
 PR = "r1"
 PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb b/meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb
index d2c8bf7..fbff706 100644
--- a/meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb
+++ b/meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb
@@ -12,7 +12,7 @@ KCONFIG_MODE = "--allnoconfig"
 LINUX_VERSION ?= "3.2.11"
 
 SRCREV_machine ?= "ec236058dc254183dbfb3744bf21f110c37af30b"
-SRCREV_meta ?= "59f350ec3794e19fa806c1b73749d851f8ebf364"
+SRCREV_meta ?= "135c75bf9615334b5b8bb9108d612fe7dfbdb901"
 
 PR = "r0"
 PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/meta/recipes-kernel/linux/linux-yocto_3.2.bb b/meta/recipes-kernel/linux/linux-yocto_3.2.bb
index b2a37c0..8bea0a0 100644
--- a/meta/recipes-kernel/linux/linux-yocto_3.2.bb
+++ b/meta/recipes-kernel/linux/linux-yocto_3.2.bb
@@ -23,7 +23,7 @@ SRCREV_machine_qemuppc ?= "92de4e2f3c6b397c8b363e079cc4d5e9bcadf877"
 SRCREV_machine_qemux86 ?= "8ada1bb97415fe959a57a08504be4eb8a656ed30"
 SRCREV_machine_qemux86-64 ?= "4ca7e2c5d42e755e1b4c3e1478128f047a8ed2a8"
 SRCREV_machine ?= "01e948c2bdf7f5ad9f2b30047a8d3493a1a2880a"
-SRCREV_meta ?= "59f350ec3794e19fa806c1b73749d851f8ebf364"
+SRCREV_meta ?= "135c75bf9615334b5b8bb9108d612fe7dfbdb901"
 
 PR = "r1"
 PV = "${LINUX_VERSION}+git${SRCPV}"
-- 
1.7.5.4




^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 2/2] linux-yocto: allow .cfg, .scc, .patch and defconfigs to be processed in order
  2012-04-13 20:55 [PATCH 0/2] linux-yocto: (hopefully) final fixes Bruce Ashfield
  2012-04-13 20:55 ` [PATCH 1/2] linux-yocto/3.2: add igb support to romley Bruce Ashfield
@ 2012-04-13 20:55 ` Bruce Ashfield
  2012-04-13 22:15 ` [PATCH 0/2] linux-yocto: (hopefully) final fixes Saul Wold
  2 siblings, 0 replies; 4+ messages in thread
From: Bruce Ashfield @ 2012-04-13 20:55 UTC (permalink / raw)
  To: richard.purdie; +Cc: openembedded-core, saul.wold

During testing/extension of the linux-yocto-tiny kernel it was found that
defconfigs were not always properly applied. This was due to two issues:

  - not being able to fully control the order of objects applied to the
    git tree on the SRC_URI
  - defconfigs triggering --allnoconfig before being applied

To fix this, the recipe space code that previously detected and generated
automatic features moves back to the kernel tools (where it was before) and
is updated to also process .cfg and defconfigs. Moving this back to the
tools allow other recipes to automatically benefit from the additional
support.

The second issue is addressed by allowing configme to take --alldefconfig
when a recipe wishes to pass a defconfig and override the default
behaviour.

Fixes [YOCTO: 2250]

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
---
 meta/classes/kernel-yocto.bbclass                  |   74 ++------------------
 .../kern-tools/kern-tools-native_git.bb            |    2 +-
 2 files changed, 8 insertions(+), 68 deletions(-)

diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index b7e8b32..0caf6a6 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -20,7 +20,9 @@ def find_sccs(d):
 	sources_list=[]
 	for s in sources:
 		base, ext = os.path.splitext(os.path.basename(s))
-		if ext and ext in ('.scc'):
+		if ext and ext in ('.scc' '.cfg' '.patch'):
+			sources_list.append(s)
+		elif base and base in 'defconfig':
 			sources_list.append(s)
 
 	return sources_list
@@ -73,72 +75,9 @@ do_patch() {
 	fi
 
 	sccs="${@" ".join(find_sccs(d))}"
-	patches_and_dirs="${@" ".join(find_urls(d))}"
-
-	# This loops through all patches, and looks for directories that do
-	# not already have feature descriptions. If a directory doesn't have
-	# a feature description, we switch to the ${WORKDIR} variant of the
-	# feature (so we can write to it) and generate a feature for those
-	# patches. The generated feature will respect the patch order.
-	#
-	# By leaving source patch directories that already have .scc files
-	# as-is it means that a SRC_URI can only contain a .scc file, and all
-	# patches that the .scc references will be picked up, without having
-	# to be repeated on the SRC_URI line .. which is more intutive
-	set +e
-	patch_dirs=
-	for pp in ${patches_and_dirs}; do
-	        p=`echo $pp | cut -f1 -d:`
-		wp=`echo $pp | cut -f2 -d:`
-		pdir=`dirname ${p}`
-		pname=`basename ${p}`
-		scc=`find ${pdir} -maxdepth 1 -name '*.scc'`
-		if [ -z "${scc}" ]; then
-			# there is no scc file. We need to switch to someplace that we know
-		        # we can create content (the workdir)
-			workdir_subdir=`dirname ${wp}`
-			suggested_dir="${WORKDIR}/${workdir_subdir}"
-			echo ${gen_feature_dirs} | grep -q ${suggested_dir}
-			if [ $? -ne 0 ]; then
-				gen_feature_dirs="${gen_feature_dirs} ${suggested_dir}"
-			fi
-			# we call the file *.scc_tmp, so the test above will continue to find
-			# that patches from a common subdirectory don't have a scc file and 
-			# they'll be placed in order, into this file. We'll rename it later.
-			gen_feature_name="gen_`echo ${workdir_subdir} | sed 's%/%%g'`_desc.scc_tmp"
-			echo "patch ${pname}" >> ${WORKDIR}/${workdir_subdir}/${gen_feature_name}
-		else
-			suggested_dir="${pdir}"
-		fi
-		echo ${patch_dirs} | grep -q ${suggested_dir}
-		if [ $? -ne 0 ]; then
-			patch_dirs="${patch_dirs} ${suggested_dir}"
-		fi
-	done
-
-	# look for any found scc files, and ensure they are added to the list
-	# of directories passsed to updateme
-	for s in ${sccs}; do
-		sdir=`dirname ${s}`
-		echo ${patch_dirs} | grep -q ${sdir}
-		if [ $? -ne 0 ]; then
-			patch_dirs="${patch_dirs} ${sdir}"
-		fi
-	done
-
-	# go through the patch directories and look for any scc feature files
-	# that were constructed above. If one is found, rename it to ".scc" so
-	# the kernel patching can see it.
-	for pdir in ${patch_dirs}; do
-		scc=`find ${pdir} -maxdepth 1 -name '*.scc_tmp'`
-                if [ -n "${scc}" ]; then
-			new_scc=`echo ${scc} | sed 's/_tmp//'`
-			mv -f ${scc} ${new_scc}
-		fi
-	done
-
-	patch_dirs="${patch_dirs} ${WORKDIR}"
+	patches="${@" ".join(find_patches(d))}"
 
+	set +e
 	# add any explicitly referenced features onto the end of the feature
 	# list that is passed to the kernel build scripts.
 	if [ -n "${KERNEL_FEATURES}" ]; then
@@ -146,9 +85,10 @@ do_patch() {
 			addon_features="$addon_features --feature $feat"
 		done
 	fi
+
 	# updates or generates the target description
 	updateme --branch ${kbranch} -DKDESC=${KMACHINE}:${LINUX_KERNEL_TYPE} \
-                           ${addon_features} ${ARCH} ${KMACHINE} ${patch_dirs}
+                           ${addon_features} ${ARCH} ${KMACHINE} ${sccs} ${patches}
 	if [ $? -ne 0 ]; then
 		echo "ERROR. Could not update ${kbranch}"
 		exit 1
diff --git a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
index b28402a..d1c2ee4 100644
--- a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
+++ b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://git/tools/kgit;beginline=5;endline=9;md5=e2bf4415f3d8
 
 DEPENDS = "git-native guilt-native"
 
-SRCREV = "91c2b184be90d6654996887203efdd7f1727a19a"
+SRCREV = "67bcedda582b2b191f26ec47dd1d4eac37f1305c"
 PR = "r12"
 PV = "0.1+git${SRCPV}"
 
-- 
1.7.5.4




^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 0/2] linux-yocto: (hopefully) final fixes
  2012-04-13 20:55 [PATCH 0/2] linux-yocto: (hopefully) final fixes Bruce Ashfield
  2012-04-13 20:55 ` [PATCH 1/2] linux-yocto/3.2: add igb support to romley Bruce Ashfield
  2012-04-13 20:55 ` [PATCH 2/2] linux-yocto: allow .cfg, .scc, .patch and defconfigs to be processed in order Bruce Ashfield
@ 2012-04-13 22:15 ` Saul Wold
  2 siblings, 0 replies; 4+ messages in thread
From: Saul Wold @ 2012-04-13 22:15 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On 04/13/2012 01:55 PM, Bruce Ashfield wrote:
> Richard/Saul,
>
> Here are two last commits for linux-yocto. One is a pending
> SRCREV update for the romley. It's included to make sure that the
> meta branch head matches the SRCREVs. Otherwise, we are relying
> on branch renaming for everyone. There's no risk, and this is already
> in use by the BSP layer.
>
> The second commit is a change that I've been working on all week
> with Andrea and his work on extending linux-yocto-tiny. The
> work that was done to support out of tree features was missing
> .cfg and defconfig support. This meant that you could run into
> patching issues.
>
> To fix it, I pulled back changes that I made a few weeks ago
> to allow all types of fragments, features, and defconfigs to
> be supported. The diffstat is largely a movement of code from
> the recipe back to the tools (where it belonged), but the intent
> stays the same.
>
> I've tested this on every use case I could find ..
>
>    - core BSPs
>    - Nitin's x32 use case
>    - Andrea's use case
>    - kernel.org test case
>    - Constructed tests with fragments, nested features, etc.
>
> Andrea has also tested his use case.
>
> These all pass, and the code fixes an intended feature for 1.2 as
> well as fixing the immediate bug in question.
>
> This is for YOCTO 2250.
>
> Cheers,
>
> Bruce
>
> cc: andrea.adami@gmail.com
>
>
> The following changes since commit 023a12b70b1bbbd3625ab5a6df2ae9943a14bea5:
>
>    linux-yocto/meta-yocto: update hardware reference SRCREVs (2012-04-13 16:35:59 -0400)
>
> are available in the git repository at:
>    git://git.pokylinux.org/poky-contrib zedd/kernel-oe
>    http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=zedd/kernel-oe
>
> Bruce Ashfield (2):
>    linux-yocto/3.2: add igb support to romley
>    linux-yocto: allow .cfg, .scc, .patch and defconfigs to be processed
>      in order
>
>   meta/classes/kernel-yocto.bbclass                  |   74 ++------------------
>   .../kern-tools/kern-tools-native_git.bb            |    2 +-
>   meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb    |    2 +-
>   meta/recipes-kernel/linux/linux-yocto-tiny_3.2.bb  |    2 +-
>   meta/recipes-kernel/linux/linux-yocto_3.2.bb       |    2 +-
>   5 files changed, 11 insertions(+), 71 deletions(-)
>

Merged into OE-Core

Thanks
	Sau!




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-04-13 22:25 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-13 20:55 [PATCH 0/2] linux-yocto: (hopefully) final fixes Bruce Ashfield
2012-04-13 20:55 ` [PATCH 1/2] linux-yocto/3.2: add igb support to romley Bruce Ashfield
2012-04-13 20:55 ` [PATCH 2/2] linux-yocto: allow .cfg, .scc, .patch and defconfigs to be processed in order Bruce Ashfield
2012-04-13 22:15 ` [PATCH 0/2] linux-yocto: (hopefully) final fixes Saul Wold

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.