本帖最后由 人民币的幻想 于 2015-8-25 18:44 编辑
最近几天都在研究在宿主机为linux环境下安装linux到OK210板子上。windows平台已经存在很多工具可以帮我们做到这点,我们为什么还要这么做?一是工程师的不作就会死的思想在作祟;二是想通过这个过程来熟悉下linux环境下开发工具的使用。整个过程的流程如下:烧写引导程序到sd卡中,然后通过SD卡启动板子,再通过命令烧写u-boot-210.bin、zImage-210、rootfs-210.yaffs2三个文件到板子上。
首先在windows平台下格式化SD卡,然后通过VM挂载到RedHat系统中,使用dd命令进行文件复制。说到复制,cp也是复制命令,那为什么不用呢?原来dd命令可以在复制文件的同时进行格式转换,因此在这里,我们使用dd命令。举个例子:dd iflag=dsync oflag=dsync if=mmc-210.bin of=/dev/sdb seek=1这条命令的具体意思是把mmc-210.bin文件复制到/dev/sdb设备即SD的第一个扇区中,并且读取和写入文件均采用同步方式。
接下来是通过samba服务实现windows和linux之间进行文件共享,为什么选用samba呢?vm虚拟机有一个相当好用的工具,vmtools可以帮我们实现文件共享,但是在以后的实际开发中,我们也许是每个人都有自己的linux服务器,这样一来,连虚拟机都不用了,还能指望vmtools吗?所以学会samba服务的配置和使用,是非常重要的。具体怎么配置,不多说了,度娘之。将本次系统安装需要用到的文件拷贝到/home/wang目录下,如下图所示:
使用dd命令将mmc-210.bin烧录到sd卡中,烧录成功如下图所示:
接着断开SD卡和linux的连接,然后将sd卡放到OK210板子上,并将拨码开关拨到SD卡启动位置,连接OK210串口2到笔记本,然后上电,可以通过securecrt软件观察到引导程序已经正常运行,接下来通过随板子发的miniu***线连接板子otg和笔记本。成功后如下:
首先格式化nandflash,选择6,完成以后是这样的
然后选择1
,伴随着pc
检测到u***
插入的声音,虚拟机右下角部分会出现一个类似u
盘的图标:SEC S3C6400X Test B/D
。点击connect
,连接成功后,我们可以通过dnw
工具来传输uboot
、内核、根文件系统到板子上了。
在此不再赘述。经过大概15分钟左右的时间,将u-boot-210.bin、zImage-210、rootfs-210.yaffs2这三个文件安装到板子上了。将
电源断掉以后,将拨码开关拨到nand启动,然后即可进入linux系统了。如下图:
把我安装过程出现的问题和解决办法说一下,不一定能解决你的问题,也许能给你提供一个思路吧。首先是vm识别不出sec s3c6400x test b/d设备的问题,先是换了u***线,然后pc不能安装正确的驱动,网上百度得到驱动然后安装,还是不能识别,更换pc的u口,vm可以识别了,但连接始终出问题。没办法,抱着试试看的态度,更新vm版本到10,然后再次尝试,竟然直接没有问题了,所有操作完全很顺利。至此,这个问题得到解决。然后是dnw的问题,我一开始在网上下载的dnw_u***.ko模块,然后加载到linux运行,运行成功了,但是就是不能传文件,经过各种折腾,在某
开发板光盘中找到一个可用的dnw_u***.ko及dnw工具,问题得以解决。