【Z-turn Board试用体验】+NFS挂载二 - 问答 - 电子威廉希尔官方网站 论坛 - 最好最受欢迎电子论坛!

【Z-turn Board试用体验】+NFS挂载二

blackroot ( 楼主 ) 2015-8-16 14:39:54  只看该作者 倒序浏览
本帖最后由 blackroot 于 2015-8-16 17:05 编辑

接前面的章节:
这段时间一直很忙,但是保持每周更新一下帖子,给自己一个交代吧
-------------------------------------up   up  up-----------------------------------------

1、在xilinx SDK中基于光盘中的工程mys_xc7z010_trd创建启动镜像BOOT.bin,包括三个文件用于创建镜像,这三个文件是f***l.elf mys_xc7z010_trd.bit u-boot.elf
2、将BOOT.bin用SDK工具烧进QSPI flash。

3.选择从flash启动,重新给板子上电,打开minicom,敲击键盘使u-boot启动终止

4、配置linux kernel,按照网上的方法:
内核支持NFS分区(即编译时在File system中选中 Root file system on NFS),
以及支持内核IP_PNP(即编译时在Networking中选中 IP: kernel level autoconfiguration)
    File systems  --->
        Network File Systems  --->
            <*> NFS file system support                        ## 必选
                  Provide NFSv3 client support             ## 可选
            Root file system on NFS                        ## 必选
    Networking  --->
        Networking support
            Networking options  --->
                  IP: kernel level autoconfiguration       ## 必选
需要打开IP:Kernel level autoconfiguration 以及下面所有的选项包括DHCP, BOOTP, RARP,而且NFS Client Support不能是模块,必须编译进内核
5、编译内核:make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- uImage
6.生成zynq-zturn.dtb:make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- dts
7、将zynq-zturn.dtb重命名为devicetree.dtb
8、搭建tftp nfs调试环境(这两个服务器测试完全没有问题,完全能正常使用)
9、将uImage devicetree.dtb拷贝到tftpboot目录下。
10、安装busybox,安装没问题,自己手动制作一个简单的文件系统,并放在共享目录下面。
11、设置开发板和PC虚拟机在同一网段,并采用桥接方式,可以ping通
12、设置启动变量
setenv bootargs 'noinitrd console=ttyPS0,115200 root=/dev/nfs rw earlyprintk nfsroot=192.168.1.13:/opt/myrootfs ip=192.168.1.55:192.168.1.13:192.168.1.1:255.255.255.0:ubuntu:eth0:off'
13、用tftp的方式将内核我设备树文件下载到DDR对应的地址
14、bootm kernel_addr  devicetree_addr


另外也可以不采用tftp的方式:
setenv bootargs 'noinitrd console=ttyPS0,115200 root=/dev/nfs rw earlyprintk nfsroot=192.168.1.13:/opt/myrootfs ip=192.168.1.55:192.168.1.13:192.168.1.1:255.255.255.0:ubuntu:eth0:off'
setenv bootcmd 'tftp 0x2000000 devicetree.dtb;bootm 0x2000000';'tftp 0x2080000 uImage;bootm 0x2080000'
bootm kernel_addr  devicetree_addr
结果图片如下:







-------------------------------no zuo no die why you try----------------------------------------------
这里为了验证挂载的正确性,在linux里面编译hello.c用嵌入式编译器arm-xilinx-linux-gnueabi-gcc编译生成hello可执行文件文件,放在共享目录里面。
----------------------------我完美的黄金分割线-------------------------------------------------------
首先在linux下面执行,提示如下

所以只能在板子上执行!!!!!!
然后在板子上执行./hello ,结果如下:

时间有限,敬请指正错误!!!!!!!
后续有时间开始上层软件开发。。。。。。。。


1个回复

梦醒没你 发表于 2016-3-31 17:19:54
这个看起来很屌呀,不知道除了这种配置方法之外,还有没有其他的配置方法
您需要登录后才可以回帖 登录 | 注册

本版积分规则


关闭

站长推荐上一条 /6 下一条

小黑屋|手机版|Archiver|电子发烧友 ( 湘ICP备2023018690号 )

GMT+8, 2024-9-20 13:40 , Processed in 0.428862 second(s), Total 37, Slave 28 queries .

Powered by 电子发烧友网

© 2015 bbs.elecfans.com

微信扫描
快速回复 返回顶部 返回列表