MACH_MINI6410) += mach-mini6410.o obj-$(CONFIG_MACH_NCP) += mach-ncp.o obj-$(CONFIG_MACH_HMT) += mach-hmt.o obj-$(CONFIG_MACH_SMARTQ) += mach-smartq.o obj-$(CONFIG_MACH_SMARTQ5) += mach-smartq5.o obj-$(CONFIG_MACH_SMARTQ7) += mach-smartq7.o
三、About machine Number
打开arch/arm/tools/mach-types文件定位到217行左右,修改如下
at91sam9g20ek MACH_AT91SAM9G20EK AT91SAM9G20EK 1624 qt6410 MACH_QT6410 QT6410 1626 u300 MACH_U300 U300 1627
这需要两者相匹配,如果内核的机器码和bootloader 传入的不匹配,就会经常出现下面的错误: Uncompressing Linux................................................................................................................................. done, booting the kernel. 不动了
接着修改linux-2.6.39/arch/arm/mach-s3c64xx/qt6410.c定位到文件末尾处
四、配置、编译测试
root@bootloader:/home/eilian/development/Linux/linux-2.6.39#cp arch/arm/configs/s3c6400_defconfig .config root@bootloader:/home/eilian/development/Linux/linux-2.6.39#make menuconfig
出现下图所示内核配置根菜单


设置完后退出
root@bootloader:/home/eilian/development/Linux/linux-2.6.39#make uImage
等待若干久后出现
SYSMAP .tmp_System.map OBJCOPY arch/arm/boot/Image Kernel: arch/arm/boot/Image is ready AS arch/arm/boot/compressed/head.o GZIP arch/arm/boot/compressed/piggy.gzip AS arch/arm/boot/compressed/piggy.gzip.o CC arch/arm/boot/compressed/misc.o CC arch/arm/boot/compressed/decompress.o SHIPPED arch/arm/boot/compressed/lib1funcs.S AS arch/arm/boot/compressed/lib1funcs.o LD arch/arm/boot/compressed/vmlinux OBJCOPY arch/arm/boot/zImage Kernel: arch/arm/boot/zImage is ready UIMAGE arch/arm/boot/uImage Image Name: Linux-2.6.39 Created: Mon Dec 12 20:29:35 2011 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1266444 Bytes = 1236.76 kB = 1.21 MB Load Address: 50008000 Entry Point: 50008000 Image arch/arm/boot/uImage is ready
root@bootloader:/home/eilian/development/Linux/linux-2.6.39#cparch/arm/boot/uImage /tftpboot/
给开发板上电(开发板已烧入uboot)打开超级终端
|