zynq linux 启动时间,Zynq—Linux移植学习笔记(十九):启动加载与固化

本文介绍如何在Linux启动过程中加载并执行shell脚本,包括启动telnet、http及ftp服务的方法。此外还介绍了如何将ramdisk、uimage及devicetree固化到QSPI flash中,以便每次启动时都能自动加载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

355761d5a4a8b530fa578281dc02ad38.png

1、 启动加载

启动时候自动执行shell脚本

Mount ramdisk,修改rootfs里面rcs文件

cd3c2c58238315de7fa4083811e707a6.png

在RCS中添加代码

echo "++ Starting telnet daemon"

telnetd -l /bin/sh

echo "++ Starting http daemon"

httpd -h /var/www

echo "++ Starting ftp daemon"

tcpsvd 0:21 ftpd ftpd -w /&

echo "rcS Complete"

cd /etc/init.d/

echo "enter initfile"

红色标记为添加的代码

Linux启动后能够看到打印b9fcc7ff9d246092be519336202d56e8.png

如果要执行shell脚本,在rcs中添加即可,当把应用app放到ramdisk中,启动时通过shell加载应用程序,那么就执行用户app了。

2、 固化

这里是将ramdisk、uimage、devicetree固化在qspi flash

如图在SDK中创建bootimage时加入ramdisk等fb196f00fa720c45a1c6c3ac129297d1.png

34c8a1ffa0c3758a3d547dc5b128ecca.png

b671c1f8e8699fcad92a2d9bbb17c783.png

注意以上的offset为在nor flash中的offset,需要与u-boot中的加载启动参数一致6ec1c71b03c0ab27700df02bfae32708.png

当u-boot启动时通过set env设置启动方式为qspiboot,之后每次加载linux内核都是通过qspi flash加载了。

文章来源:Felven的博客

注:本文为授权转载文章,如需转载请联系作者授权

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值