第1步 Linux配置菜单及内核移植.doc_第1页
第1步 Linux配置菜单及内核移植.doc_第2页
第1步 Linux配置菜单及内核移植.doc_第3页
第1步 Linux配置菜单及内核移植.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux配置菜单及内核移植文档修订记录版本时间修订者修订内容1.02010-03-24刘伟民创建此文档每次修改与增加内容者,需在文档修订记录中进行记录 一、 说明1. 硬件平台 SEP0718 eASIC开发板2. Linux BSP 0718-android-kernel-2.6.29 linux-v3.4(SEP4020)二、 配置菜单进入BSP顶层目录后执行make menuconfig(调用arch/arm/Kconfig文件),即执行BSP的内核配置。1. 配置菜单选项介绍(SEP0718) 主菜单Linux Kernel Configurationn Kconfig中指定:mainmenu Linux Kernel Configuration General setupn Kconfig中source init/Kconfig:menu General setupn 系统常规设置(略)n 重点配置选项l RCU Subsystem:Classic RCUl (17) Kernel log buffer size (16 = 64KB, 17 = 128KB)l (0) Default panic timeoutl Choose SLAB allocator (SLUB (Unqueued Allocator) Enable the block layern init/Kconfig中source block/Kconfig:Enable the block layern 块设备层设置n 重要配置选项l Default I/O scheduler (No-op) System Typen Kconfig中:menu System Typen CPU类型及特性(略)n 重要配置选项(在内核移植部分介绍为何会出现这些选项)l ARM system type (SEP0718)l SEP0718 Implementations(EASIC0718)l Support ARM V6K processor extensionsl Support Thumb user binaries Kernel Featuresn Kconfig中:menu Kernel Featuresn 重要配置选项l Memory split (3G/1G user/kernel split)l (4096) Low address space to protect from user allocation Boot optionsn Kconfig中:menu Boot optionsn 重要配置选项l (0x0) Compressed ROM boot loader base addressl (0x0) Compressed ROM boot loader BSS addressl (root=/dev/mtdblock1 rootfstype=yaffs mem=64mb console=ttyS1,115200 init=/init) Device Driversn Kconfig中:menu Device Driversn 重要配置选项l Input device support (Horizontal/Vertical) l Character devices(Serial drivers) Kernel hackingn Kconfig中:source arch/arm/Kconfig.debug:menu Kernel hackingn 重要配置选项l (1024) Warn for stack frames larger than (needs gcc 4.4) Load an Alternate Configuration File Save an Alternate Configuration Filen 内核配置后,自动生成.config文件,顶层Makefile间接包含.config文件并根据其定义的变量编译内核。2. 配置菜单中的参数(SEP4020)Linux-V3.4/arch/arm/mm/Kconfig ARCH_SEP4020选中后,默认选择CPU_ARM720TLinux-V3.4/drivers/char/Kconfig ARCH_SEP4020选中后,SEP4020_CHAR有效。因此,当前目录下的makefile中的obj-$(CONFIG_SEP4020_CHAR) += sep4020_char/执行Linux-V3.4/arch/arm/mach-4020/Kconfig: ARCH_SEP4020选中,才会出现此菜单项 GFD4020选中后,ARCH_4020有效。因此,当前目录下的makefile中的obj-$(CONFIG_ARCH_4020) +=4020.o执行三、 内核移植下载linux-2.6.28.5源码包将0718-android-kernel-2.6.29移植至linux-2.6.28.51. 修改linux-2.6.28.5/makefile文件,指定编译平台及编译器ARCH ?= armCROSS_COMPILE ?= /usr/local/arm/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-2. 将0718-android-kernel-2.6.29/arch/arm/mach-sep0718复制到linux-2.6.28.5相应目录下 修改linux-2.6.28.5/arch/arm/Kconfig,添加config ARCH_SEP0718bool SEP0718help Support for Southeast University SEP0718 boards.与source arch/arm/mach-sep0718/Kconfig 修改linux-2.6.28.5/arch/arm/makefile,添加machine-$(CONFIG_ARCH_SEP0718) := sep07183. 修改linux-2.6.28.5/arch/arm/tools/ mach-types 在最后一行添加sep0718 ARCH_0718 EASIC0718 1944. 修改linux-2.6.28.5/arch/arm/mm/Kconfig 403行添加ARCH_SEP0718,以支持“config CPU_V6”5. 修改linux-2.6.28.5/arch/arm/ mach-sep0718/include/mach/dma.h 屏蔽#include 6. 进行内核配置 见“菜单配置”,未介绍的选项全部为空7. 内核编译 linux-2.6.28.5/arch/arm/boot下生成zImage注意:1. 与u-boot-1.3.3-ram配合使用2. UBOOT启动后需修改BOOTARGS参数,之后被内核读取。但eASIC板子无法保存此参数,只能在编译前对CONFIG_BOOTARGS进行赋值。3. root=/dev/mtdblock1 rootfstype=yaffs mem=64mb console=ttyS1,11520

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论