[oe] [meta-handheld][PATCH 1/2] linux-jlime-ben-nanonote: fix build errors

Apelete Seketeli apelete at seketeli.net
Fri Apr 5 05:37:54 UTC 2013


The following changes fix build errors occuring on linux kernel 2.6.36
for the ben-nanonote machine:
- add LIC_FILES_CHKSUM,
- add "gcc-attribute-unused.patch" patch file to fix an issue where
  gcc errors on 'unused but set variables' in kernel code. The patch
  annonate such variables with __attribute__((__unused__)).

Signed-off-by: Apelete Seketeli <apelete at seketeli.net>
---
 .../gcc-attribute-unused.patch                     |   87 ++++++++++++++++++++
 .../linux/linux-jlime-ben-nanonote_2.6.36.bb       |    4 +-
 2 files changed, 90 insertions(+), 1 deletion(-)
 create mode 100644 recipes-kernel/linux/linux-jlime-ben-nanonote-2.6.36/gcc-attribute-unused.patch

diff --git a/recipes-kernel/linux/linux-jlime-ben-nanonote-2.6.36/gcc-attribute-unused.patch b/recipes-kernel/linux/linux-jlime-ben-nanonote-2.6.36/gcc-attribute-unused.patch
new file mode 100644
index 0000000..4037daa
--- /dev/null
+++ b/recipes-kernel/linux/linux-jlime-ben-nanonote-2.6.36/gcc-attribute-unused.patch
@@ -0,0 +1,87 @@
+diff --git a/arch/mips/jz4740/dma.c b/arch/mips/jz4740/dma.c
+index 5ebe75a..20511d6 100644
+--- a/arch/mips/jz4740/dma.c
++++ b/arch/mips/jz4740/dma.c
+@@ -242,7 +242,7 @@ EXPORT_SYMBOL_GPL(jz4740_dma_get_residue);
+ 
+ static void jz4740_dma_chan_irq(struct jz4740_dma_chan *dma)
+ {
+-	uint32_t status;
++	uint32_t status __attribute__((__unused__));
+ 
+ 	status = jz4740_dma_read(JZ_REG_DMA_STATUS_CTRL(dma->id));
+ 
+diff --git a/arch/mips/kernel/signal.c b/arch/mips/kernel/signal.c
+index 5922342..69466ec 100644
+--- a/arch/mips/kernel/signal.c
++++ b/arch/mips/kernel/signal.c
+@@ -84,7 +84,7 @@ static int protected_save_fp_context(struct sigcontext __user *sc)
+ 
+ static int protected_restore_fp_context(struct sigcontext __user *sc)
+ {
+-	int err, tmp;
++	int err, tmp __attribute__((__unused__));
+ 	while (1) {
+ 		lock_fpu_owner();
+ 		own_fpu_inatomic(0);
+diff --git a/arch/mips/kernel/syscall.c b/arch/mips/kernel/syscall.c
+index 1dc6edf..51b1860 100644
+--- a/arch/mips/kernel/syscall.c
++++ b/arch/mips/kernel/syscall.c
+@@ -383,7 +383,7 @@ save_static_function(sys_sysmips);
+ static int __used noinline
+ _sys_sysmips(nabi_no_regargs struct pt_regs regs)
+ {
+-	long cmd, arg1, arg2, arg3;
++	long cmd, arg1, arg2, arg3 __attribute__((__unused__));
+ 
+ 	cmd = regs.regs[4];
+ 	arg1 = regs.regs[5];
+diff --git a/arch/mips/math-emu/ieee754int.h b/arch/mips/math-emu/ieee754int.h
+index 1a846c5..76836c8 100644
+--- a/arch/mips/math-emu/ieee754int.h
++++ b/arch/mips/math-emu/ieee754int.h
+@@ -71,7 +71,7 @@
+ 
+ 
+ #define COMPXSP \
+-  unsigned xm; int xe; int xs; int xc
++  unsigned xm; int xe; int xs __attribute__((__unused__)); int xc
+ 
+ #define COMPYSP \
+   unsigned ym; int ye; int ys; int yc
+@@ -105,7 +105,7 @@
+ 
+ 
+ #define COMPXDP \
+-u64 xm; int xe; int xs; int xc
++u64 xm; int xe; int xs __attribute__((__unused__)); int xc
+ 
+ #define COMPYDP \
+ u64 ym; int ye; int ys; int yc
+diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c
+index 6721ee2..a107db5 100644
+--- a/arch/mips/mm/c-r4k.c
++++ b/arch/mips/mm/c-r4k.c
+@@ -1076,7 +1076,7 @@ static int __cpuinit probe_scache(void)
+ 	unsigned long flags, addr, begin, end, pow2;
+ 	unsigned int config = read_c0_config();
+ 	struct cpuinfo_mips *c = &current_cpu_data;
+-	int tmp;
++	int tmp __attribute__((__unused__));
+ 
+ 	if (config & CONF_SC)
+ 		return 0;
+diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c
+index 2efcbd2..1850105 100644
+--- a/arch/mips/mm/init.c
++++ b/arch/mips/mm/init.c
+@@ -324,7 +324,7 @@ int page_is_ram(unsigned long pagenr)
+ void __init paging_init(void)
+ {
+ 	unsigned long max_zone_pfns[MAX_NR_ZONES];
+-	unsigned long lastpfn;
++	unsigned long lastpfn __attribute__((__unused__));
+ 
+ 	pagetable_init();
+ 
diff --git a/recipes-kernel/linux/linux-jlime-ben-nanonote_2.6.36.bb b/recipes-kernel/linux/linux-jlime-ben-nanonote_2.6.36.bb
index 3df3f63..b4f96f5 100644
--- a/recipes-kernel/linux/linux-jlime-ben-nanonote_2.6.36.bb
+++ b/recipes-kernel/linux/linux-jlime-ben-nanonote_2.6.36.bb
@@ -1,6 +1,7 @@
 DESCRIPTION = "Linux 2.6.36 kernel for the Ben Nanonote"
 SECTION = "kernel"
 LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
 
 DEPENDS += "u-boot-mkimage-native"
 
@@ -15,7 +16,8 @@ SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kristoffer/linux-hpc.gi
 	   file://logo_linux_clut224.tar.gz \
 	   file://modifier-keys.patch \
 	   file://config-ben-nanonote \
-	   file://jz4740-udc.patch"
+	   file://jz4740-udc.patch \
+	   file://gcc-attribute-unused.patch"
 
 S = "${WORKDIR}/git"
 
-- 
1.7.10.4





More information about the Openembedded-devel mailing list