找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 61|回复: 0
打印 上一主题 下一主题

基于AM578的Linux系统启动方法

[复制链接]

6

主题

8

帖子

67

积分

二级会员(20)

Rank: 2Rank: 2

积分
67
跳转到指定楼层
1#
发表于 2018-6-27 17:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
SD系统启动卡+网络方式启动
基于TFTPNFS启动开发板,是一种很便捷网络启动和调试方式,避免用户在开发过程中,使用SD系统启动卡等方式拷贝启动文件到开发板而造成的繁琐工作。
本小节介绍从SD系统启动卡启动U-Boot,再通过TFTP加载设备树文件、Linux内核镜像文件,最后使用NFS挂载远程文件系统。进行以下操作前,请参照《TFTP开发环境搭建》、《NFS开发环境搭建》文档搭建好TFTPNFS开发环境。
1.1     启动文件准备
AM57x开发板对应的设备树文件和内核镜像文件,拷贝到Ubuntu搭建好的TFTP服务器工作目录中。
本文以广州创龙TL5728-EasyEVM开发板为例,其对应设备树文件为am57xx-evm-reva3.dtb;网络启动连接网口为RGMII ETH0.
平台介绍:
    AM5728TI Sitara系列高性能SOC,得益于异构多核处理架构,CPU内集成了多核DSP、多核PRUIVA-HDGPU等协处理单元,通过硬件加速的方式极大增强CPU的数据、多媒体处理能力,可满足工业协议支持、大数据计算、实时控制等应用需求,同时采用先进的28纳米生产工艺,极大降低处理器的功耗,能耗比更加突出。
     TL5728-EasyEVM是一款广州创龙基于 TI AM5728(浮点双 DSP C66 x  + ARMCortex-A15SOM-TL5728 核心板设计的开发板,它为用户提供了 SOM-TL5728 核心板的测试平台,用于快速评估 SOM-TL5728 核心板的整体性能。底板采用沉金无铅工艺的 4 层板设计,为客户提供丰富的AM5728 入门教程,协助客户进行底板的开发,提供长期、全面的技术支持,帮助客户以最快的速度进行产品的二次开发,实现产品的快速上市。
Ø 基于TI AM5728浮点双DSPC66x+双ARMCortex-A15工业控制及高性能音视频处理器;
Ø 强劲的视频编解码能力,支持1路1080P60或2路720P60或4路720P30视频硬件编解码,支持H.265视频软解码;
Ø 支持高达1路1080P60全高清视频输入和1路LCD + 1路HDMI 1.4a输出;
Ø 双核PRU-ICSS工业实时控制子系统,支持EtherCAT、EtherNet/IP、PROFIBUS等工业协议;
Ø 外设接口丰富,集成双千兆网、PCIe、GPMC、USB 2.0、UART、SPI、QSPI、SATA 2.0、I2C、DCAN等工业控制总线和接口,支持极速接口USB 3.0;

   拷贝完成后,UbuntuTFTP服务器工作目录包含的设备树文件、内核镜像文件如下图所示:

UbuntuNFS共享目录下,新建开发板文件系统存放文件夹rootfs,并将光盘“Shell\Linux-4.4.19-mksdboot\filesystem”目录下的开发板文件系统压缩包拷贝到Ubuntu
进入文件系统压缩所在路径,执行如下指令解压到此压缩文件到NFS共享目录rootfs文件夹:
Host#       sudo tar -vxfrootfs-03.01_v1.1.tar.gz -C /home/tronlong/nfs_share/rootfs

解压完成后,NFS共享目录下的rootfs文件夹内容如下图所示:

1.2    设置网络启动环境变量
根据“表1”所示,将开发板对应网口和PC通过路由器或者交换机互联。开发板拨码开关选择MMC1启动:010001~5),开发板上电后快速点击任意键进入U-Boot命令行。执行如下命令,恢复系统默认U-Boot环境变量,设置NFS服务器上的文件系统路径:
U-Boot>           env default -f -a  
U-Boot>           setenv rootpath /home/tronlong/nfs_share/rootfs/

继续执行如下命令,设置网络启动环境变量:
U-Boot>           setenv netboot 'echo Booting from network ...; run netloadimage; runnetloadfdt; run netargs; bootz ${loadaddr} - ${fdtaddr}'
U-Boot>           setenv autoload no
U-Boot>           dhcp          //自动获取IP地址
U-Boot>           setenv serverip 192.168.1.157
U-Boot>           setenv fdtfile am57xx-evm-reva3.dtb
U-Boot>           setenv bootcmd 'run netboot'
U-Boot>           saveenv
U-Boot>           run netboot
192.168.1.157TFTPNFS服务器IP地址,am57xx-evm-reva3.dtbAM57x平台开发板使用的设备树文件,请根据实际情况修改。设置成功后,执行如下指令将从网络启动内核并挂载文件系统,启动时开发板会自动获取IP地址,如下图所示:

开发板启动成功,进入文件系统执行如下指令,可以查看到已经成功挂载上远程NFS共享目录rootfs文件夹下的文件系统:
Target#             df

SD系统启动卡+USB系统启动盘启动
本小节介绍从SD系统启动卡启动U-Boot,再通过USB系统启动盘启动Linux内核并挂载文件系统。进行以下操作前,请参照《Linux SD系统启动卡制作方法》文档,制作好USB系统启动盘。
将制作好的USB系统启动盘连接到开发板的USB3.0接口,开发板拨码开关选择MMC1启动:010001~5)。开发板上电,快速点击任意键进入U-Boot命令行。执行如下命令,设置USB启动环境变量,启动过程打印信息如下图所示:
U-Boot>           setenv bootcmd run usbboot
U-Boot>           saveenv
U-Boot>           reset

开发板启动成功,进入文件系统执行如下指令,可以查看到开发板文件系统挂载情况如下图所示:
Target#             df

使用USB方式时,内核需要重新编译,编译时选择支持USB加载文件系统,然后使用编译后的内核镜像替换USB启动设备文件系统分区boot目录下的内核镜像文件。广州创龙提供的最新内核已完成内核的修改,直接支持USB方式启动系统。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-21 18:00 , Processed in 0.060051 second(s), 35 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表