PROBLEM: kernel 2.6.20.6 build failed for ppc board chestnut(ibm ppc 750GX/FX)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



PROBLEM: linux kernel 2.6.20.6 build failed for ppc board chestnut(ibm ppc 
750GX/FX)

STEPS I followed:
1) make ARCH=ppc CROSS_COMPILE=ppc_4xx- chestnut_defconfig # toolchain from 
eldk 4.1

2) make ARCH=ppc CROSS_COMPILE=ppc_4xx- V=1

...

make -f scripts/Makefile.build obj=arch/ppc/platforms
  
ppc_4xx-gcc -m32 -Wp,-MD,arch/ppc/platforms/.chestnut.o.d  -nostdinc -isystem /opt/eldk/usr/bin/../lib/gcc/powerpc-linux/4.0.0/include -D__KERNEL__ -Iinclude  -include 
include/linux/autoconf.h -Iarch/ppc -Iarch/ppc/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O2 -Iarch/ppc -msoft-float -pipe -ffixed-r2 -mmultiple  -mno-altivec -mstring -Wa,-maltivec -fomit-frame-pointer  -Wdeclaration-after-statement -Wno-pointer-sign    -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(chestnut)"  -D"KBUILD_MODNAME=KBUILD_STR(chestnut)" -c -o 
arch/ppc/platforms/chestnut.o arch/ppc/platforms/chestnut.c
arch/ppc/platforms/chestnut.c: In function 'chestnut_setup_mtd':
arch/ppc/platforms/chestnut.c:435: error: 'physmap_map' undeclared (first use 
in this function)
arch/ppc/platforms/chestnut.c:435: error: (Each undeclared identifier is 
reported only once
arch/ppc/platforms/chestnut.c:435: error: for each function it appears in.)
make[1]: *** [arch/ppc/platforms/chestnut.o] Error 1
make: *** [arch/ppc/platforms] Error 2


This PROBLEM should also affect these boards:
find -name '*.[chS]' -exec grep physmap_map {} \; -print
        physmap_map.size = CHESTNUT_32BIT_SIZE;
./arch/ppc/platforms/chestnut.c
        physmap_map.size = size;
./arch/ppc/platforms/ev64360.c
        physmap_map.size = size;
./arch/ppc/platforms/katana.c

I've veryfied 2.6.15, 2.6.19.2 2.6.20.1 2.6.20.6

ONLY 2.6.15 can build successfully. sounds like the problem is caused by the 
interface change of mtd.


this brute force patch sould solve the problem:

diff -Nru /tmp/linux-2.6.20.6/arch/ppc/platforms/chestnut.c \  
linux-2.6.20.6/arch/ppc/platforms/chestnut.c

--- /tmp/linux-2.6.20.6/arch/ppc/platforms/chestnut.c   2007-04-07 
04:02:48.000000000 +0800
+++ linux-2.6.20.6/arch/ppc/platforms/chestnut.c        2007-04-13 
17:09:03.000000000 +0800
@@ -432,7 +432,9 @@
        ptbl.name = "User FS";
        ptbl.size = CHESTNUT_32BIT_SIZE;

-       physmap_map.size = CHESTNUT_32BIT_SIZE;
+       // physmap_map.size = CHESTNUT_32BIT_SIZE;
+       physmap_configure(CHESTNUT_32BIT_BASE, CHESTNUT_32BIT_SIZE, 
CONFIG_MTD_PHYSMAP_BANKWIDTH, NULL);
+
        physmap_set_partitions(&ptbl, 1);
        return 0;
 }

-- 
Wang, Baojun                                        Lanzhou University
Distributed & Embedded System Lab              http://dslab.lzu.edu.cn
School of Information Science and Engeneering        [email protected]
Tianshui South Road 222. Lanzhou 730000                     .P.R.China
Tel:+86-931-8912025                                Fax:+86-931-8912022

Attachment: pgpVIPL3Bwp6B.pgp
Description: PGP signature


[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux