Chinaunix首页 | 论坛 | 博客
  • 博客访问: 831058
  • 博文数量: 281
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2770
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-02 19:45
个人简介

邮箱:zhuimengcanyang@163.com 痴爱嵌入式技术的蜗牛

文章分类
文章存档

2020年(1)

2018年(1)

2017年(56)

2016年(72)

2015年(151)

分类: LINUX

2015-11-05 14:13:45

1. 安装linux虚拟机(网上有很多资料) 【附件:VMware_9安装Ubuntu_12.doc
2. 配置linux虚拟机和windows,以及开发板能够互通。[windows,虚拟机linux和板子如何连接]
(1)linux虚拟机,windows,开发板设置成同一网段
(2)使用桥接(bridge)模式
(3)配置VMnet0工作模式为“本地的有线网卡”。
3. 利用工具CuteFTP,或者开源工具(),使得windows和linux虚拟机中的文件可以互传。
4. NFS配置,使得开发板可以挂接虚拟机linux下的文件夹。[NFS如何设置]
NFS挂接命令(例子):mount -t nfs -o nolock,vers=2 192.168.1.10:/work/nfs_root /mnt
5. 配置生成板子所运行的内核代码树
(1)下载干净的内核代码树,比如下载该版本的纯净内核树:linux-2.6.22.6.tar.bz2
(2)修改代码树,生成可以在板子上运行的代码树: linux-2.6.22.6_board,比如,板子可以运行,必须生成kernel文件(比如:uImage文件)


1. 查看目录文件
book@book-desktop:/work/system$ ls
busybox-1.7.0.tar.bz2        s3c_mci_patch.tar.bz2      yaffs_source_util_larger_small_page_nand.tar.bz2
 u-boot-1.1.6_jz2440.patch  yaffs_util_mkyaffsimage.patch
linux-2.6.22.6_jz2440.patch  u-boot-1.1.6.tar.bz2
linux-2.6.22.6.tar.bz2       yaffs_source.tar.gz

2. 解压纯净的内核树
#tar xjvf linux-2.6.22.6.tar.bz2

3. 进入内核目录
#cd linux-2.6.22.6/

4. patch打补丁
#patch -p1 < ../linux-2.6.22.6_jz2440.patch

5. 配置,编译内核uImage
book@book-desktop:/work/system$ cd linux-2.6.22.6/
book@book-desktop:/work/system/linux-2.6.22.6$ cp config_ok .config
book@book-desktop:/work/system/linux-2.6.22.6$ make uImage

生成uImage就可以了。

6. 编写驱动程序: xxx_driver.c
7. 编写Makefile文件
KERN_DIR = /work/system/linux-2.6.22.6_board    (这个就是前面生成的内核代码树,在目标板上可以直接运行)

all:
    make -C $(KERN_DIR) M=`pwd` modules

clean:
    make -C $(KERN_DIR) M=`pwd` modules clean
    rm -rf modules.order

obj-m    += xxx_driver.o



8. 编译驱动程序,生成xxx_driver.ko文件
9. 利用NFS服务将xxx.driver.ko文件加载进内核运行。
相关的测试命令:
insmod xxx_driver.ko
rmmod xxx_driver
lsmod xxx_driver
cat /proc/devices
ls -l /dev/xxx_device
10. 写测试代码,对驱动进行相关的测试和验证。


补充:
更新u-boot, 内核,以及根文件系统文件



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