[oe] [PATCH v2] Update the em-x270 machine to work with linux_2.6.23.

Rafael Campos Las Heras methril at gmail.com
Mon Aug 10 23:07:01 UTC 2009


 * Use of generic linux_2.6.23 recipe
 * remove em-x270_2.6.23 recipe (ugly).
 * Add a patch that allows to compile with gcc 4.1 compiler.

Signed-off-by: Rafael Campos Las Heras <methril at gmail.com>
---
Changes since the first version:
 * Fix a typo 'prevent'.
 * Modify the commit coment in a proper way

 conf/machine/em-x270.conf                          |    4 +-
 recipes/linux/em-x270_2.6.23.bb                    |   29 --------------------
 .../em-x270/01-prevent_loop_timespec_add_ns.patch} |   12 +++++---
 .../em-x270}/defconfig                             |    0
 .../em-x270}/em-x270.patch                         |    0
 recipes/linux/linux_2.6.23.bb                      |    3 ++
 6 files changed, 13 insertions(+), 35 deletions(-)
 delete mode 100644 recipes/linux/em-x270_2.6.23.bb
 copy recipes/linux/{linux-rp-2.6.24/0001-time-prevent-the-loop-in-timespec_add_ns-from-bei.patch => linux-2.6.23/em-x270/01-prevent_loop_timespec_add_ns.patch} (55%)
 rename recipes/linux/{em-x270-2.6.23 => linux-2.6.23/em-x270}/defconfig (100%)
 rename recipes/linux/{em-x270-2.6.23 => linux-2.6.23/em-x270}/em-x270.patch (100%)

diff --git a/conf/machine/em-x270.conf b/conf/machine/em-x270.conf
index f8a5c95..efcf104 100644
--- a/conf/machine/em-x270.conf
+++ b/conf/machine/em-x270.conf
@@ -9,7 +9,7 @@ TARGET_ARCH = "arm"
 GUI_MACHINE_CLASS ?= "bigscreen"
 
 PACKAGE_EXTRA_ARCHS = "iwmmxt "
-PREFERRED_PROVIDER_virtual/kernel = "${MACHINE}"
+PREFERRED_PROVIDER_virtual/kernel = "linux"
 
 # Use tune-xscale per default. Machine independent feeds should be built with tune-strongarm.
 #require conf/machine/include/tune-xscale.inc
@@ -43,7 +43,7 @@ MACHINE_FEATURES = "kernel26 touchscreen apm alsa bluetooth wifi usbhost usbgadg
 #
 
 #PCMCIA_MANAGER = "pcmciautils"
-PREFERRED_VERSION_em-x270 = "2.6.23"
+PREFERRED_VERSION_linux = "2.6.23"
 MODUTILS = "26"	
 PREFERRED_PROVIDER_xserver = "xserver-kdrive"
 
diff --git a/recipes/linux/em-x270_2.6.23.bb b/recipes/linux/em-x270_2.6.23.bb
deleted file mode 100644
index fcef728..0000000
--- a/recipes/linux/em-x270_2.6.23.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-require linux.inc
-
-SECTION = "kernel"
-DESCRIPTION = "Linux kernel for the Compulab EM-X270 system"
-LICENSE = "GPL"
-DEPENDS = "u-boot-utils-native"
-PR = "r1"
-
-KERNEL_IMAGETYPE = "uImage"
-
-SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2 \
-	   file://em-x270.patch;patch=1 \
-           file://defconfig \
-	  "
-
-S = "${WORKDIR}/linux-${PV}"
-
-COMPATIBLE_HOST = 'arm.*-linux'
-COMPATIBLE_MACHINE = "em-x270"
-
-inherit kernel
-inherit package
-
-ARCH = "arm"
-
-FILES_kernel-image = ""
-
-S = "${WORKDIR}/linux-${PV}"
-
diff --git a/recipes/linux/linux-rp-2.6.24/0001-time-prevent-the-loop-in-timespec_add_ns-from-bei.patch b/recipes/linux/linux-2.6.23/em-x270/01-prevent_loop_timespec_add_ns.patch
similarity index 55%
copy from recipes/linux/linux-rp-2.6.24/0001-time-prevent-the-loop-in-timespec_add_ns-from-bei.patch
copy to recipes/linux/linux-2.6.23/em-x270/01-prevent_loop_timespec_add_ns.patch
index 9d7020d..a2f6e17 100644
--- a/recipes/linux/linux-rp-2.6.24/0001-time-prevent-the-loop-in-timespec_add_ns-from-bei.patch
+++ b/recipes/linux/linux-2.6.23/em-x270/01-prevent_loop_timespec_add_ns.patch
@@ -1,15 +1,19 @@
-Index: linux-2.6.24/include/linux/time.h
-===================================================================
+---
+ include/linux/time.h |    4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+diff --git a/include/linux/time.h b/include/linux/time.h
+index 2091a19..d32ef0a 100644
 --- a/include/linux/time.h
 +++ b/include/linux/time.h
-@@ -172,6 +172,10 @@ static inline void timespec_add_ns(struct timespec *a, u64 ns)
+@@ -173,6 +173,10 @@ static inline void timespec_add_ns(struct timespec *a, u64 ns)
  {
 	ns += a->tv_nsec;
 	while(unlikely(ns >= NSEC_PER_SEC)) {
 +		/* The following asm() prevents the compiler from
 +		 * optimising this loop into a modulo operation.  */
 +		asm("" : "+r"(ns));
-+
++		
 		ns -= NSEC_PER_SEC;
 		a->tv_sec++;
 	}
+
diff --git a/recipes/linux/em-x270-2.6.23/defconfig b/recipes/linux/linux-2.6.23/em-x270/defconfig
similarity index 100%
rename from recipes/linux/em-x270-2.6.23/defconfig
rename to recipes/linux/linux-2.6.23/em-x270/defconfig
diff --git a/recipes/linux/em-x270-2.6.23/em-x270.patch b/recipes/linux/linux-2.6.23/em-x270/em-x270.patch
similarity index 100%
rename from recipes/linux/em-x270-2.6.23/em-x270.patch
rename to recipes/linux/linux-2.6.23/em-x270/em-x270.patch
diff --git a/recipes/linux/linux_2.6.23.bb b/recipes/linux/linux_2.6.23.bb
index 76ebbbe..0f62a1c 100644
--- a/recipes/linux/linux_2.6.23.bb
+++ b/recipes/linux/linux_2.6.23.bb
@@ -28,6 +28,9 @@ SRC_URI_avr32 = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2
                  file://defconfig \
                  http://avr32linux.org/twiki/pub/Main/LinuxPatches/linux-2.6.23.atmel.3.patch.bz2;patch=1 \
                 "
+SRC_URI_append_em-x270 = "\
+	file://em-x270.patch;patch=1 \
+	file://01-prevent_loop_timespec_add_ns.patch;patch=1"
 
 SRC_URI_append_cm-x270 = "\
 	file://0001-cm-x270-base2.patch;patch=1 \
-- 
1.6.0.4





More information about the Openembedded-devel mailing list