Chinaunix首页 | 论坛 | 博客
  • 博客访问: 151803
  • 博文数量: 40
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 908
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-03 11:03
个人简介

学习linux

文章分类
文章存档

2014年(7)

2013年(33)

我的朋友

分类: 嵌入式

2013-09-03 22:08:01

既然是移植,就要先找个模板,就用smdk6410吧。它们是相同的CPU,还是相同的SOC,只是不同的machine而已,也就是外设硬件的接法不同而已。
1. 先弄个壳子:
    我直接用的smdk6410,只要machine ID和我的bootloader一样就可以启动了(在arch/arm/tools/mach-types),最多也只是
    外设工作异常,因为它们soc完全一样的。
    设置成ARM架构的:在顶层Makefile里修改,ARCH ?= arm,CROSS_COMPILE ?= arm-linux-
    默认配置:复制arch/arm/configs/下的s3c6400-defconfig文件,然后将其保存为.config,
    make menuconfig:配置内核支持EABI(说的是一种新的系统调用方式,一般默认),只选择支持smdk6410

2. make 编译;make zImage  在arch/arm/boot/zImage;
    下载zImage到nand flash后可以启动,但是还没有根文件系统。

3. 后面要做的工作:
     内核已经在SDRAM中运行(SDRAM仅在bootloader中配置即可),但是要在nand flash上建文件系统,还要移植nand flash驱动。
     用busybox制作根文件系统很简单,下次再弄通过NFS挂载根文件系统。
     NFS要用DM9000网卡,所以还要移植网卡驱动。并选择一些网络协议。
     
    


阅读(1261) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~