Hi,<br>I'm trying to enable KGDB between x86 host and PPC target (405EP and 440EP boards are used here). I'm using 2.6.15 kernel from ELDK4.0 patched with linux-2.6.15.5-kgdb-2.4.tar.bz2 and cross-compiling toolchain from ELDK4.0. I run "make menuconfig ARCH=ppc CROSS_COMPILE=ppc_4xx-" for configuration. For 405EP board, PPChameleonEVB is used in "Machine Type"; for 440EP board, Yosemite is used. After configuration, I run "make all ARCH=ppc CROSS_COMPILE=ppc_4xx-". But during compilation, similar errors will occur.<br><br>For 405EP, there are:<br> LD arch/powerpc/lib/built-in.o<br> CC arch/ppc/platforms/4xx/ppchameleon.o<br>arch/ppc/platforms/4xx/ppchameleon.c: In function 'platform_init':<br>arch/ppc/platforms/4xx/ppchameleon.c:252: error: 'struct machdep_calls' has no member named 'early_serial_map'<br>make[1]: *** [arch/ppc/platforms/4xx/ppchameleon.o] Error 1<br>make: *** [arch/ppc/platforms/4xx]
Error 2<br>And the lines cause the errors are:<br>251 #ifdef CONFIG_KGDB<br>252 ppc_md.early_serial_map = ppchameleon_early_serial_map;<br>253 #endif<br><br><br>For 440EP, there are:<br> LD arch/powerpc/lib/built-in.o<br> CC arch/ppc/platforms/4xx/yosemite.o<br>arch/ppc/platforms/4xx/yosemite.c: In function 'yosemite_early_serial_map':<br>arch/ppc/platforms/4xx/yosemite.c:288: warning: implicit declaration of function 'gen550_init'<br>arch/ppc/platforms/4xx/yosemite.c: In function 'platform_init':<br>arch/ppc/platforms/4xx/yosemite.c:349: error: 'struct machdep_calls' has no member named 'early_serial_map'<br>make[1]: *** [arch/ppc/platforms/4xx/yosemite.o] Error 1<br>make: *** [arch/ppc/platforms/4xx] Error 2<br>And the lines cause the errors are:<br>348 #ifdef
CONFIG_KGDB<br>349 ppc_md.early_serial_map = yosemite_early_serial_map;<br>350 #endif<br><br><br>I find that for ARCH=ppc, both ppchameleon.c and yosemite.c include the file ${2.6.15_SOURCE_DIR}/include/asm-ppc/machdep.h. There is "struct machdep_calls" but no member "early_serial_map" in it. However, in the file ${2.6.15_SOURCE_DIR}/include/asm-powerpc/machdep.h, there is "struct machdep_calls" and also member "early_serial_map" in it. If I run "make menuconfig ARCH=powerpc CROSS_COMPILE=ppc_4xx-" instead of "make menuconfig ARCH=ppc CROSS_COMPILE=ppc_4xx-", there is no PPChameleonEVB or Yosemite in "Machine Type". So I can't compile kernel for the boards I have.<br><br>Would someone like to give me any advice about this problem? Thank you very much.<br> <BR><BR>Zhou Rui<br>Distributed & Embedded System Lab<br>School of Information Science & Engineering<br>Lanzhou University, P. R.
China<br>http://dslab.lzu.edu.cn/~zr/<p> __________________________________________________<br>¸Ï¿ì×¢²áÑÅ»¢³¬´óÈÝÁ¿Ãâ·ÑÓÊÏä?<br>http://cn.mail.yahoo.com