文档详情

实验5linux内核的裁剪移植.doc

发布:2015-08-18约4.64千字共14页下载文档
文本预览下载声明
实验5 linux内核的裁剪移植 一、实验目的: 学习利用menuconfig配置文件进行裁减内核,编译内核并移植到开发板上。 二、实验内容 一、开发环境 宿主机:ubuntu10.04 开发板:tiny6410 编译器:4.3.2 二、内核移植 1.下载源码 /pub/linux/kernel/v2.6/linux-2.6.38.tar.bz2 此实验所需的文件放到/home/embedded/11目录下: linux-2.6.38.tar.bz2, yaffs2.tar.bz2 s3c_nand.c , s3c_nand_mlc.fo ,nand_base.c ,Kconfig ,regs-nand.h 2.解压 ( 进入根目录下的/home/poplar/expr4/kernel目录,解压源码) # cd /home # mkdir poplar/expr4/kernel –p # cd /home/poplar/expr4/kernel # cp /home/embedded/11/linux-2.6.38.tar.bz2 ./ tar xvfj /home/poplar/expr4/kernel/linux-2.6.38.tar.bz2 3.修改架构,编译器(需要在arm上运行,所以用交叉编译器) 解压完进入解压出来的linux-2.6.38目录 #cd linux-2.6.38 #vi Makefile?(或者用gedit) 191行改为??? ?ARCH?????????????= arm //191行 CROSS_COMPILE ?= /usr/local/arm/4.3.2/bin/arm-linux- (找到其交叉编译环境,把路径加全) //192行 4.生成默认配置文件 #cp arch/arm/configs/s3c6400_defconfig .config 如省略这个操作的话后面会找不到System Type Linux内核中已经自带了关于我们6410开发板的配置。 5.修改配置项 #make menuconfig System Type-[*] MINI6410?? 选上, 6.拷贝NAND FLASH驱动到根目录下的/home/poplar/expr4/kernel下的linux-2.6.38里相应的文件位置处(以下的文件在实验五文件夹里有) drivers/mtd/nand/s3c_nand.c ? ? ??arch/arm/plat-samsung/include/plat/regs-nand.h drivers/mtd/nand/s3c_nand_mlc.fo drivers/mtd/nand/nand_base.c drivers/mtd/nand/Kconfig 执行命令: #cp /home/embedded/11/s3c_nand.c ./drivers/mtd/nand/ #cp /home/embedded/11/s3c_nand_mlc.fo ./drivers/mtd/nand/ #cp /home/embedded/11/nand_base.c ./drivers/mtd/nand/ #cp /home/embedded/11/Kconfig ./drivers/mtd/nand/ #cp /home/embedded/11/regs-nand.h ./arch/arm/ plat-samsung/include/plat/ 7修改nand 驱动makefile 输入指令#cd drivers/mtd/nand #vi Makefile drivers/mtd/nand/Makefile中20行增加 obj-$(CONFIG_MTD_NAND_S3C) += s3c_nand.o 末尾再增加 obj-$(CONFIG_MTD_NAND_S3C) += s3c_nand_mlc.fo 8.增加相应选项 输入指令#cd /home/poplar/expr4/kernel/linux-2.6.38 #make menuconfig ??Device Drivers---? ???????????? * Memory Technology Device (MTD) support??--- ???????????????????????????? [*]?? MTD partitioning support ??????????????????????????????[*]???? Command line partition table parsing? ????????????
显示全部
相似文档