当前位置: 首页 > news >正文

使用tftpd更新开发板内核

 我们升级内核可以通过原厂提供的升级软件来进行,比如瑞芯微的RKDevTool.exe,只不过这种方式必须通过指定的OTG升级口,还得借助按键进入loader模式后才可以。

其实还可以利用一些通用的工具来进行升级,比如tftpd工具。

下载地址phjounin / tftpd64 / wiki / Download Tftpd64 — Bitbucket

直接选择portble免安装版本,打开即可用,他有好几种工作模式,我们使用的是电脑做tftp服务端。

文件夹路径放置你想要用于传输的文件,可以有多个文件,点击show dir可以看到里面的文件,我这里单独建立一个文件夹,只放了一个内核镜像。

下面的IP是你电脑的IP,假设有多个网卡,选择你正在使用的那个(即将与开发板通信的)

接下来是开发板端的操作,上电后按CTRL+C打断启动,进入uboot,可以使用uboot指令,现在的uboot功能已经非常强大了,本次使用的uboot 2017.09支持tftp。

首先设置网络,我的板子和电脑在同一个网段,但还是要设置下,其中serverip是电脑,板子IP随便设不要跟局域网已有的冲突即可。

设置完网络后试着ping一下看通不通,第一次会报个错,但还是通的,再ping就很快。

使用tftp指令从电脑服务端下载文件,c0008000是你的内存地址,也就是RAM,所以如果文件超出了内存大小,那就用不了。我这里内存是8G,内核镜像256M,所以足够。

 

到这里文件已经下载完毕放在缓存里了,下一步就是写入存储介质里了,根据你的存储介质不同,可能会有不同的操作,我这里用的是emmc。先输入mmc进入mmc子系统,可以查看到它支持哪些指令。

我们首先需要擦除一下内核所在的分区,内核在哪呢,从之前烧录软件分区可知boot从0x0000a000起,一直到0x000ca000-1。

 不过这里不是地址啊,从uboot指令也能看出来,用的单位是blk和cnt,每个blk表示512字节。

首先使用erase擦除这块存储,然后将内存里的数据再写进去。

之后就可以敲boot启动了 ,可以对比下,内核编译日期发生了变化,原内核5.6编译,现内核6.3编译(刚好处于换行,不那么清楚)

 

http://www.lryc.cn/news/362823.html

相关文章:

  • MySQL数据库整体知识点简述
  • 深入理解MySQL索引下推优化
  • 论文降重技巧:AI工具如何助力论文原创性提升?
  • el-date-picker的使用,及解决切换type时面板样式错乱问题
  • Flutter 中的 ToggleButtonsTheme 小部件:全面指南
  • 新手教程之使用LLaMa-Factory微调LLaMa3
  • Java函数笔记
  • Maven实战: 从工程创建自定义archetype
  • 初识JAVA中的包装类,时间复杂度及空间复杂度
  • RapidMiner如何利用Hugging Face中的模型实现更有趣的事
  • Vue3 自定义Hooks函数的封装
  • python的DataFrame和Series
  • ARP欺骗的原理与详细步骤
  • 25、DHCP FTP
  • spark学习记录-spark基础概念
  • BGP数据包+工作过程
  • 【C语言】详解函数(庖丁解牛版)
  • createAsyncThunk完整用法介绍
  • [书生·浦语大模型实战营]——第六节 Lagent AgentLego 智能体应用搭建
  • Word文档如何设置限制编辑和解除限制编辑操作
  • IO进程线程(六)进程
  • 机器视觉——找到物块中心点
  • 重磅消息! Stable Diffusion 3将于6月12日开源 2B 版本的模型,文中附候补注册链接。
  • Python报错:AttributeError: <unknown>.DeliveryStore 获取Outlook邮箱时报错
  • 如何 Logrus IT 的质量评估门户帮助提升在线商店前端(案例研究)
  • 程序调试
  • 深度学习-07-反向传播的自动化
  • 四川景源畅信:抖音做直播有哪些人气品类?
  • 闲鱼无货源-高级班,最全·最新·最干,紧贴热点 深度学习(17节课)
  • 力扣 739. 每日温度