s3c6410 Linux 驱动开发环境搭建
s3c6410 Linux 驱动开发环境搭建
—— 既然你是做Linux开发的,你还用虚拟机?
很多人都在win下做开发,于是SD_writer.exe之类的烧写工具“大行其道”,多是用虚拟机Linux。完全转到Linux下学习开始蛮不爽的,开发板制作商送的教程都是些讲Win-CE的东东,感觉实质性的东西没什么。对于完全用Linux做开发的技术讲解非常少,连烧写SD卡都用的win下面的程序。后来找了些资料,整理在这里,希望留给有心人.共同营造一个更好的共同学习的环境. 当别人遇到困难的时候可以留下点东西帮助别人.
(由于我之前已经烧写过一次Linux,所以第二次烧写的是不就不需要用Eboot擦除分区保护的那几个块了,如果之前装的是Win-CE的板子看一下开发板供应商的手册)
首先在PC主机上
接着,配置好minicom
准备好版本对应的kernel tree (这个很重要~ 内核版本一定要对应,很多问题就是因为内核版本不一致导致的)
烧写SD卡(一边凉快去 *.exe)
Linux 自带工具--dd
- 格式化SD卡为vfat格式
mkfd.vfat /dev/sdb1
- 把光盘的zImage Uboot.bin yaffs 文件复制到SD卡的根目录
- linux命令行中执行:
dd iflag=dsync oflag=dsync if=mmc.bin of=/dev/sdc seek=1
( /dev/sdc SD卡在linux中的设备名字 mmc.bin是要烧写的文件,这里用些什么文件开发板的手册都会讲,我这里注重整理Linux环境的烧写方法)
- linux命令行中执行: sync
- 开发板从SD卡启动,就会出现烧写界面!大功告成!
在Linux PC主机上编译好Hello word模块做driver 交叉编译的测试
修改Makefile即可
# Code wrire : EOF # code date : 2014.08.19 # e-mail : [email protected] # # THis Makefile is a demo only for ARM-architecture # ifneq ($(KERNELRELEASE),) obj-m := hello.o else CROSS_COMPILE = /usr/local/arm/4.3.2/bin/arm-linux-gcc/ CC = CROSS_COMPILE KERNELDIR ?= /lib/modules/$(shell uname -r)/build PWD :=$(shell pwd) SUBDIR := /Jason_with_ARM/linux-3.0.1/ modules: $(MAKE) -C $(SUBDIR) M=$(PWD) modules clean: rm -rf *.o *.order *.symvers *.ko *.mod* endif
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。