My Compiling Linux Kernel
1. Download linux-2.6.22.tar.gz
2. setup the PATH for the cross compiler.
GCC----4.1.2
3. make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- menuconfig
4. make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage
then an error occur: arch/arm/mach-mx3/clock.c:1247: error: invalid use of undefined type 'struct timer_list',
the 'struct timer_list' is defined in the file include/linux/timer.h, add #include <linux/timer.h> before clock.c,
then make again. but another error occur:arch/arm/mach-mx3/usb.c:38:32: error: linux/usb/fsl_xcvr.h: No such file or directory ,
download a patch named linux-2.6.22-mx-drivers_usb.patch ,and use the command to patch: patch -p1 < linux-2.6.22-mx- drivers_usb.patch
make again and the problem is solved. one error is gone one error is coming, and this error realy make me sick.
include/asm/arch/pmic_external.h:843: error: expected ')' before 'event'
include/asm/arch/pmic_external.h:852: error: expected ')' before 'event'
include/asm/arch/pmic_external.h:862: error: expected ')' before 'sensor'
include/asm/arch/pmic_external.h:871: error: expected ')' before '*' token
Finally i have to disable DPTC driver when making menuconfig.
the config menu like belove.
Device Drivers --->
MXC support drivers ---->
Advanced Power Management devices --->
[]MXC DPTC driver
make menuconfig again, pass!