前言

  • 【AT91SAM9261EK】开发板,有网络接口,u-boot 支持通过网络来烧写,这里来烧写根文件系统rootfs
  • 烧写Linux的根文件系统,可以使用J-Link,也可以使用【tftp】,u-boot 2022 里面,tftp命令改为了:【tftpboot】,今天验证了一下,发现可以正常的下载 文件到SDRAM中,并可以使用nand write 命令,烧写到NandFlash中

配置方法

  • 首先需要在PC端开启 【tftp服务】,我使用的是:Tftpd64,这个软件可以在 https://bitbucket.org/phjounin/tftpd64/downloads/ 下载
  • 打开 Tftpd64,配置 TFTP服务器,如设置【共享的目录】与【PC IP地址】

  • 开发板进入u-boot 命令行模式
  • printenv 可以查看网络的配置,如果没有,可以使用 setenv 配置上
U-Boot> printenv
baudrate=115200
bootargs=console=ttyS0,115200 earlyprintk mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,256k(env),256k(env_redundant),256k(spare),512k(dtb),6M(kernel)ro,-(rootfs) root=/dev/mtdblock7 rw rootfstype=cramfs init=/linuxrc
bootcmd=nand read 0x22000000 0x200000 0x300000; bootm
bootdelay=3
ethact=dm9000
ethaddr=a8:53:3e:26:6a:5b
fdtcontroladdr=23f01c20
gatewayip=192.168.1.1
ipaddr=192.168.1.200
netmask=255.255.255.0
serverip=192.168.1.100
  • 如电脑的IP 为: 192.168.1.100 ,这里为:serverip
  • 开发板的IP 为:192.168.1.200,这里为:ipaddr

tftpboot

  • 其实就是tftp 命令,用于从TFTP服务器拉文件到内存(SDRAM)中
  • 从PC端拉一个 rootfs_02.bin 的文件到 开发板的方法:
U-Boot> tftpboot 0x22000000 rootfs_02.bin
dm9000 i/o: 0x30000000, id: 0x90000a46
DM9000: running in 16 bit mode
MAC: a8:53:3e:26:6a:5b
operating at 100M full duplex mode
Using dm9000 device
TFTP from server 192.168.1.100; our IP address is 192.168.1.200
Filename 'rootfs_02.bin'.
Load address: 0x22000000
Loading: #############################################################################################2.1 MiB/s
done
Bytes transferred = 1363968 (14d000 hex)
  • 如果无法传输,需要确认网络的IP地址的配置是否正确
  • 这里的tftpboot 0x22000000 rootfs_02.bin 中的: 0x2200 0000 是 SDRAM的地址, rootfs_02.bin 是电脑端TFTP服务器共享的文件名

nand write 烧写

  • u-boot 命令使用 nand write命令烧写从TFTP服务器拉取到内存的rootfs_02.bin,这里需要指定【内存的起始地址】与【文件的大小】,文件的大小在文件传输完,会显示
  • Bytes transferred = 1363968 (14d000 hex) 这是 文件传输的大小, 0x14d000
  • 0x22000000 是文件存放的起始地址
  • 0x800000 是根文件系统烧写到nandflash中的位置,这个是确定好的位置
  • 可以在烧写前擦除文件系统分区,使用:nand erase 命令
U-Boot> nand erase 0x800000 0x800000NAND erase: device 0 offset 0x800000, size 0x800000
Erasing at 0xfe0000 -- 100% complete.
OK
Load address: 0x22000000
Loading: #############################################################################################2.1 MiB/s
done
Bytes transferred = 1363968 (14d000 hex)
U-Boot> nand write 0x22000000 0x800000 0x14d000NAND write: device 0 offset 0x800000, size 0x14d0001363968 bytes written: OK
U-Boot> reset
resetting ...
RomBOOT

验证效果

  • 烧写完,可以 reset 重启开发板,看看Linux 文件系统是否正常,shell终端是否正常进入
  • 实际验证正常

小结

  • 熟悉u-boot TFTP 的操作,拉取文件用于烧写
  • 使用网络来传输文件,速度很快,如果文件很大,可以使用u-boot 的 TFTP来烧写
  • u-boot 2022tftp命令,使用:tftpboot

【AT91SAM9261EK】u-boot 2022 tftpboot 烧写根文件系统相关推荐

  1. 转”使用UBOOT烧写根文件系统和内核的方法

    "转"使用UBOOT烧写根文件系统和内核的方法 2012-08-13 20:39:28 分类: 原文地址:"转"使用UBOOT烧写根文件系统和内核的方法 作者: ...

  2. 【Tiny4412】烧写Qt文件系统到EMMC

    00. 目录 文章目录 00. 目录 01. 烧写内核 02. 启动文件系统 03. 烧写Qt文件系统到EMMC 04. 问题讨论 05. 参考 01. 烧写内核 1.1 在minicom中输入如下命 ...

  3. 【Tiny4412】烧写Qt文件系统到SD卡

    00. 目录 文章目录 00. 目录 01. 烧写内核 02. 启动文件系统 03. 烧写Qt文件系统到SD卡 04. 问题讨论 05. 参考 01. 烧写内核 1.1 在minicom中输入如下命令 ...

  4. 移植U-BOOT之支持烧写YAFFS文件系统以及制作U-BOOT补丁

    今天,我们来移植U-BOOT让其支持YAFFS文件系统映像的烧写,以及最后的终极目标,制作Uboot补丁,因为我们信心苦苦移植好了Uboot,如果换一个地方的或者换一台电脑之类的,我们也不想再浪费时间 ...

  5. u-boot-2012.04.01移植到TQ2440(八):支持烧写yaffs文件系统

    一.支持yaffs烧写文件系统 先直接烧写试一下 TQ2440 # nand write.yaffs32000000 rootfs $filesize NAND write: device 0 off ...

  6. ESP8266乐鑫版本的(支持云端升级 (Boot 模式)烧写方法,(V1.5.4官方介绍如下)(BOOT模式)...

    硬件平台: nodeMCU devkit核心板,带ch340g,应该是仿造的,官方是cp2102驱动,安信可科技有连接https://wiki.ai-thinker.com/esp8266/board ...

  7. 【Tiny4412】烧写最小文件系统到EMMC

    00. 目录 文章目录 00. 目录 01. 烧写内核 02. 启动文件系统 03. 烧写文件系统到EMMC 04. 问题讨论 05. 附录 01. 烧写内核 1.1 在minicom中输入如下命令 ...

  8. 【Tiny4412】烧写最小文件系统到SD卡

    00. 目录 文章目录 00. 目录 01. 烧写内核 02. 启动文件系统 03. 烧写文件系统到SD卡 04. 问题讨论 05. 参考 01. 烧写内核 1.1 在minicom中输入如下命令 D ...

  9. linux内核烧写erasing failed,mfgtool烧写mx28文件系统失败

    内核烧写成功后,接下来烧写文件系统,烧写过程中内核core掉,日志如下 lib/libBrokenLocale-2.11.1.so lib/libcrypt.so.1 lib/librt.so.1 l ...

  10. am335x linux内核烧写_am335x文件系统烧写问题

    printenv打印信息: U-Boot# printenv arch=arm baudrate=115200 board=am335x bootargs_defaults=setenv bootar ...

最新文章

  1. erlang: Programming Rules and Conventions。
  2. IntelliJ IDEA(2017)安装和破解
  3. android面试之fragment,当你面试的时候,被问到关于Fragment的种种
  4. 万字长文带你一览ICLR2020最新Transformers进展(下)
  5. 面试了100个数据分析候选人以后,我总结出了这些面试问题
  6. 64位 regsrv win10_Win10 64位安装个人版SQL2000图文教程
  7. 【LeetCode笔记】226. 翻转二叉树(Java、递归)
  8. 【今日CV 计算机视觉论文速览 第115期】Fri, 10 May 2019
  9. OpenCV-图像处理(03、Mat对象)
  10. Ubuntu 下使用为知笔记(WizNote)Linux 客户端
  11. scipy库中的leastsq函数
  12. 三星识别文字_免费文字识别
  13. Java从遗忘到入门——Day06
  14. OneZero第四周第一次站立会议(2016.4.11)
  15. Linux系统安装docker教程
  16. matlab数据归一化(补充),matlab数据归一化(补充)
  17. pogo pin连接器与排针、排母的寿命区别
  18. 教大家如何安装win to go
  19. android视频编辑spk下载,Tipard Video Enhancer(视频增强编辑器)
  20. 河南大学计算机系导师张重生,《大河报》我国首款AI甲骨缀合产品发布,河南大学留学归国人员联谊会会员张重生教授团队主研...

热门文章

  1. nuke 11 for mac(视频后期合成软件)破解教程
  2. SqlSugar-执行Sql语句查询实例
  3. 技术是如何推动内容产业的。
  4. 自用软件系列之:迅雷X ,无广告,纯净版
  5. 高等数学辅导讲义严选题辅导讲义(学习笔记)
  6. 计算机类603高数,拟录取ING ,谈谈603高等数学
  7. 高等数学——常用不定积分公式
  8. html登陆滑动验证,JavaScript实现登录滑块验证
  9. 在Microsoft Office 2007中检测和修复应用程序
  10. win11没有扫雷了?咱用python做一个(效果演示+源码分享)