rootfs的烧写
制作文件系统-烧写img镜像
1. 首先格式化nand flash;在vivi界面下输入f;2.将已经制作好的uboot.bin烧写到nand flash 的bootloader 分区(1):在vivi界面下输入q 进入命令界面:(2):在vivi界面下输入part show 查看nand flash 的分区情况:(2):在vivi界面下输入命令load flash 0 0x00040000 u 将uboot.bin 烧写到nand flash 的boot loader 分区:(3):烧写完成后,使mini2440开发板从nand flash 启动:3.将制作好的uImage 烧写到nand flash 对应的内核分区:(1):运行命令“tftp 0x30000000 192.168.1.1:uImage”,(192.168.1.1为tftp服务器地址)将内核镜像uImage 下载到内存0x30000000地址处:址处的整个kernel 分区:(3):运行命令“nand write 0x30000000 0x00060000 400000”将位于0x30000000出的内核镜像烧写到nand flash的整个内核分区:(4):改变bootcmd 的值,让uboot 在加载模式下能自动启动内核:setenv bootcmd 'nboot 0x30007fc0 0 0x00060000;bootm'(5)saveenv保存4.设置启动参数setenv bootargs noinitrd console=ttySAC0 root=/dev/mtdblock3init=/linuxrc rootfstype=cramfs5.mknod mtdblock0 b 31 0mknod mtdblock1 b 31 1mknod mtdblock2 b 31 2mknod mtdblock3 b 31 36.把制作好的rootfs制作成镜像mkcramfs rootfs rootfs_cramfs.img7.将制作好的rootfs_cramfs.img烧写到nand flash 对应的root分区:(1):运行命令“tftp 0x30000000 rootfs_cramfs.img”,将rootfs镜像下载到内存0x30000000地址处:(2):nand erase 0x00560000 0x00a00000(3):nand write 0x30000000 0x00560000 600000。
Uboot下Flash烧写步骤
烧写映像文件到NAND Flash
1)地址空间说明
| 16M | 32M |
|---------------|----------------------------------|---------
tftp 82000000 uboot_release_1M.bin
sf probe 0
sf erase 0 100000
sf write 82000000 0 100000
reset
3)烧写内核和文件系统
save
5) 烧写Flash文件
sf probe 0
mw.b 82000000 ff 1000000
tftp 82000000 flash.img
sf erase 0 1000000
sf write 82000000 0 1000000
nand erase 1000000 2000000
nand write.yaffs 82000000 1000000 974580 #注意:974580为rootf文件实际大小(16进制)
4)设置启动参数
setenv bootargs 'mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=yaffs2 mtdparts=hinand:16M(boot),32M(rootfs),32M(test)'
烧写映像文件到SPI Flash
1)地址空间说明
| ห้องสมุดไป่ตู้ 4M | 12M |
|---------------|----------------------------------|
烧程序步骤
烧写程序的步骤1、首先保证板子和 linux之间网络是通的测试方法用板子ping linux2、修改rcS进入:/opt/YY-DM6446/filesys/etc/init.d/找到rcS修改:代码末尾添加cd /opt/dvsdk/dm6446./loadmodules.sh./encodedecode -y 2 -p3、烧写文件系统到flash(以NFS 方式启动烧写)(1)、文件系统的制作yaffs2(根据自己的需要,文件系统需要精简,以减小其所占的空间。
)host $ cd /op/YY-DM6446/filesyshost $ tar zcf ../rootfs.tar.gz *(/opt/YY-DM6446/filesys$ tar zcf ../rootfs.tar.gz *)可以在/opt/YY-DM6446 目录下看到刚才的压缩文件rootfs.tar.gz host $ cd /opt/YY-DM6446host $ mv rootfs.tar.gz /op/YY-DM6446/filesys/opt(/opt/YY-DM6446$ mv rootfs.tar.gz /opt/YY-DM6446/filesys/opt)2)、上电启动,登陆系统(root 用户以无密码验证登陆)root@192.168.1.34:~# mkdir nandroot@192.168.1.34:~# flash_eraseall /dev/mtd3root@192.168.1.34:~# mount -t yaffs2 /dev/mtdblock3 nand root@192.168.1.34:~# tar zxvf /opt/rootfs.tar.gz -C nand 4、烧写内核1)、在uboot 的中键入以下命令:setenv serverip 192.168.1.3setenv ipaddr 192.168.1.34tftpboot 0x80700000 uImagenand erase 0x200000 0x200000nand write 0x80700000 0x200000 0x2000005、umount /root/nand。
u-bootUBIFS移植及文件系统烧写
u-bootUBIFS移植及文件系统烧写imx515 uboot UBIFS移植及android UBIFS文件系统烧写作者:longfeey1.1 Uboot UBI的移植关于uboot的UBI的移植几乎没有说明介绍,移植首先要保证你的flash驱动能够跑起来,我是在nand flash 上跑的UBI。
刚开始的时候我也没有什么头绪,只能够从uboot的readme开始查找一些蛛丝马迹。
- MTD Support (mtdparts command, UBI support)CONFIG_MTD_DEVICEAdds the MTD device infrastructure from the Linux kernel.Needed for mtdparts command support.CONFIG_MTD_PARTITIONSAdds the MTD partitioning infrastructure from the Linuxkernel. Needed for UBI support.因此,要UBI支持首先得要MTD支持,因此在配置文件中要添加以上两项的定义。
要移植UBI还要添加:#define CONFIG_CMD_UBIFS#define CONFIG_CMD_UBI总的关于UBI的部分是以下几个宏:#define CONFIG_CMD_UBI#define CONFIG_CMD_UBIFS#define CONFIG_CMD_MTDPARTS#define CONFIG_MTD_DEVICE#define CONFIG_MTD_PARTITIONS#define CONFIG_RBTREE#define CONFIG_LZO同时要给NAND建立个默认的分区,方便以后操作。
分区如下:#define MTDIDS_DEFAULT "nand0=nand0"#define MTDPARTS_DEFAULT "mtdparts=nand0:0x100000@0x0(u-boot),0x300000@0x120000(kernel),0x7b00000@0x420000(rootf s),-(reserved)"#define MTD_ACTIVE_PART "nand0,2"以上的配置都在uboot_imx/include/configs/mx51_vdphone.h 文件中进行配置。
烧写ARM开发板系统教程-----uboot、内核以及文件系统
烧写ARM开发板系统教程-----uboot、内核以及⽂件系统⼀、sd启动将u-boot镜像写⼊SD卡,将SD卡通过读卡器接上电脑(或直接插⼊笔记本卡槽),通过"cat /proc/partitions"找出SD卡对应的设备,我的设备节点是/dev/sdb.(内存卡的节点)。
当有多个交叉编译器是,不⽅便设置环境变量时,可以在编译命令中指定交叉编译器,具体如下:在源码中操作以下步骤:make distcleanmake ARCH=arm CROSS_COMPILE=/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi- mrpropermake ARCH=arm CROSS_COMPILE=/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi- tiny210_configmake ARCH=arm CROSS_COMPILE=/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi- all spl编译出tiny210-uboot.bin,注意交叉编译⼯具路径执⾏下⾯的命令$sudo dd iflag=dsync oflag=dsync if=tiny210-uboot.bin of=/dev/sdb seek=1把内存卡插⼊开发板,使⽤串⼝⼯具设置环境变量:setenv gatewayip 192.168.1.1(电脑⽹关)setenv ipaddr 192.168.1.102(开发板ip,不要与虚拟机和电脑ip冲突)setenv netmask 255.255.255.0setenv serverip 192.168.1.10(虚拟机ip)saveenv⼆、nand启动烧写Uboot:通过SD卡启动的u-boot for tiny210 将u-boot镜像写⼊nandflash在虚拟机下重启tftp sudo service tftpd-hpa restart开发板终端下执⾏下⾯的命令:[FriendlyLEG-TINY210]# tftp 21000000 tiny210-uboot.bin[FriendlyLEG-TINY210]# nand erase.chip[FriendlyLEG-TINY210]# nand write 21000000 0 3c1f4 (写⼊长度)内核的烧写位置是0x600000开始的区域,⽂件系统烧写位置为0xe00000开始的区域。
烧写程序
1、先把Tftpd32打开,其中的Current Directory项选择tftpd32.exe所在的目录;Server interface项输入本机的ip地址;烧写程序过程中这个软件不要关掉2、打开SecureCRT软件,选择‘文件’中的‘连接’,会弹出一个连接的对话框,右键点击‘会话’项,选择‘新建会话’,会弹出‘新建会话向导’。
协议项选择‘Serial’,下一步中端口选择usb转232的端口,波特率选择‘115200’,数据位选择‘8’,奇偶校验‘无’,停止位‘1’;数据流控制项全不要选。
打开连接3、在SecureCRT软件中。
开启终端机时连按几下‘Enter’键,使其进入到如图所示的模式设置IP地址set ipaddr 192.168.18.123 板子的IP设置宿主机地址:set serverip 192.168.18.140 PC电脑的IP设置网卡地址:每台机都不一样setenv ethaddr 00:04:9f:01:b4:04save重启机器又要进入图中的模式烧录Cramfs文件系统:tftp 31000000 rootfs_jml.cramfsnand erase 0x600000 0x1e00000nand write 0x31000000 0x600000 0x1300000重启机器也要进入图中的模式设置启动参数cramfsset bootcmd nand read 0x30007fc0 0x00100000 0x00200000\;bootm 0x30007fc0se bootargs root=/dev/mtdblock2 init=/linuxrc console=ttyS0,115200 rootfstype=cramfs mem=32mbsave重启。
烧写内核代码及tftp及bootfs的挂载
Fedora14下烧写uboot到sd卡,烧写内核代码到nangflash ,挂载ntfs文件系统到s5pv210前几天在老师的指导下完成了s5pv210的u-boot及内核代码的烧写和挂载netfs文件系统,今天抽时间再总结一下,主要是对中间出现的问题及解决方案。
希望对有需要的人有所帮助。
环境:fedora 14 s5pv210开发板vwarm9.0需要准备的:uImage 、tiny210v2-uboot.bin 、rootfs_qtopia_qt4.img一.首先先把u-boot 烧到sd卡里面代码:dd iflag= dsync oflag=dsync if= tiny210v2-uboot.bin of=/dev/sdb seek=1说明:这一步比较简单,没什么问题烧写完毕后,开发板上电,以root权限进入minicom进入u-boot 界面。
二、准备烧写内核代码1、配置TFTP服务器为了安装TFTp服务器及客户端,需要连接网络,为方便起见,本人建议,开启虚拟机之前首先调节网络模式为NET模式,这样主机只要能连上网,虚拟机就能上网,可以通过YUN 工具进行TFTP服务器的安装代码:#yum install tftp-server //安装TFTP服务器# yum install –y tftp //安装TFTP客户端–y 参数表示同意下载配置TFTP环境创建共享目录:#mkdir /var/lib/tftpboot打开修改配置文件:#vim /etc/xinetd.d/tftp修改如下:server-args = -s /var/lib/tftpboot –c启动TFTP服务器:#service xinetd restart测试是否启动TFTP服务器:# netstat –a | grep tftp如果没有打开:#chkconfig tftp on# /etc/init.d /xinetd restart关闭防火墙:Setup 进入设置(这里不在多说)注意:接下来虚拟机下必须设置网络模式为桥接模式(烧写uImage时候的网络模式),我曾经试过在NET模式下和HOST-ONLY模式都没有成功。
DM365系统烧写
开发板DM365系统的烧写( DM365系统的烧写主要包括四方面的烧写:1.UBL的烧写 2.U-BOOT的烧写3.uImage的烧写 4.root文件系统的烧写。
UBL、U-BOOT的烧写是基于CCS3.3,而uImage 的烧写是基于TFTP,root文件系统的烧写是基于NFS )1. 基于CCS3.3烧写UBL、U-BOOT(1) CCS3.3启动完毕后,选择ARM端打开(2) 加载GEL,连接ARM(ctrl+c)(3)将Flash_Writer目录下的UBL_DM36x_NAND.bin与u-boot.bin两个文件拷贝到任意盘符根目录下,例如D:\(4) 在CCS中用File Load Program….命令,加载Flash_Writer目录下的NANDWriter_DM36x.out文件;然后点击运行,运行程序;(5) 程序会弹出下图所示对话框,输入UBL所在路径,如图输入D:\UBL_DM36x_NAND.bin,点击OK,进行UBL的烧写;(6)Ubl烧写完成后,将会弹出如下对话框,要求输入u-boot文件的路径,如图输入D:\u-boot.bin,点击OK,进行u-boot的烧写。
等待一会之后还会弹出两次下面的对话框,两次都点击OK,按默认的入口地址即可;在Stdout窗口将会显示“NAND boot preparation was successful!”字样,说明烧写完成;到此已烧写完成UBL、U-BOOT.2.基于TFTP烧写uImage(1)首先将DaVinci Linux Develop Software文件夹下SEED_DVS365-SDK.tar.gz复制到Linux下的/opt目录下,并进行解压缩安装:Host #tar -zxvf SEED_DVS365-SDK.tar.gz (过程大概需要10分钟)。
解压完成后得到dvsdk_2_10_00_17、mv_pro_5.0、nfs三个文件夹。
rootfs的烧写
根文件系统的移植
准备工作
• 将我们PC机的串口和板子的串口连接起来, 打开超级终端,选择COM1口,并作相应的 配置。
• 注意:一定要保证其显示IP为我们PC机的IP。不要随意在 tftp32中settings中改变IP,否者会导致tftp32无法正常 使用。也可以使用虚拟机linux系统上的tftp。
• 在提示符下输入setenv serverip 192.168.1.234,此IP为我们PC机IP,再输 入setenv ipaddr 192.168.1.193,此IP为 我们开发板的IP。最好输入saveenv,保存 设置,之后就不需要改动了。
2、下载u-boot的配置脚本文件
• 在提示符下输入tftp 0x030008000 mini2410.img
• 执行配置脚本,使用u-boot的autoscr命令
• 设置之后,我们可以通过printenv指令,查 看u-boot的环境变量中已经添加了新的变量
• 这时,我们的u-boot的配置就结束了。现在 除了你要修改ip地址之外,就不需要再更改 其它的配置了
• 将网线连接好。 • 进入到u-boot模式下。
1、配置bootloader
• 由于要通过tftp下载文件,所以需要配置tftp的网络ip, 在配置之前打开img下的tftp32.exe程序。tftp32.exe打 开后会自动寻找到PC机上网卡的IP,如果IP不正确可以通 过IP的下拉框寻找到本机的IP。
3、烧写根文件系统
• 执行烧写根文件系统的命令,输入run update_rootfs指令
mBOX_Amlogic系统文件烧写方法
Amlogic BOX系统烧写步骤Reporter :Cary.JinDate: 2011/7/25Version:1.0AgendaSD SD卡的制作卡的制作SD SD Uboot Uboot Uboot制作制作系统烧写步骤设置启动参数 使用使用Recovery Recovery Recovery模式模式SD SD卡的制作卡的制作SD SD分区分区1:假如假如sd sd sd的设备名是的设备名是/dev//dev/sdd sdd sdd,,分区之前先分区之前先umount umount jianhui@amlogic jianhui@amlogic--linux linux:~$ :~$ :~$ su su root //root //切换到切换到切换到root root root用户用户Password:root@amlogic root@amlogic--linux:/home/amlogic linux:/home/amlogic# # # fdisk fdisk /dev//dev/sdd sdd //启动启动fdisk fdisk fdisk命令命令Command (m for help): d //Command (m for help): d //删除原始分区删除原始分区Selected partition 1Command (m for help): n //Command (m for help): n //添加一个新的分区添加一个新的分区Command actione extendedp primary partition (1p primary partition (1--4)SD SD卡的制作卡的制作p //p //选择主分区选择主分区Partition number (1Partition number (1--4): 1 //4): 1 //第一个分区第一个分区First cylinder (1First cylinder (1--243, default 1): 6//243, default 1): 6//请保留请保留请保留10M 10M 10M空间空间Using default value 1Last cylinder, +cylinders or +Last cylinder, +cylinders or +size{K,M,G size{K,M,G size{K,M,G} (1} (1} (1--243, default 243): ////直接回车直接回车直接回车,,默认剩余空间Command (m for help): w //Command (m for help): w //执行写操作执行写操作The partition table has been altered!Calling Calling ioctl ioctl ioctl() to re () to re () to re--read partition table.Syncing disks. //Syncing disks. //分区完成分区完成root@amlogic root@amlogic--linux:/home/amlogic linux:/home/amlogic##2:分区完成后输入分区完成后输入fdisk fdisk –l, l, 应该会看到应该会看到应该会看到::Device Boot Start End Blocks Id System /dev/sdd1 6 132 1060258+ 83 Linux 分别执行分别执行::3:mkfs.vfat /dev/sdb1 ///dev/sdb1 //分区分区分区11格式化成格式化成fat fatSD SD卡的制作卡的制作3:拷贝升级文件到拷贝升级文件到sd sd sd卡卡mount mount ––t t vfat vfat /dev/sdb1 //dev/sdb1 /mnt mnt //mount //mount分区分区分区11到mnt mnt下下将uImage uImage,,android.rootfs,u android.rootfs,u--boot boot--512M 512M--UartB.bin UartB.bin这三个文件拷贝进这三个文件拷贝进去SD SD Uboot Uboot Uboot制作制作SD SD 卡卡U -boot boot的制作的制作1:使用使用DD DD DD命令拷贝命令拷贝命令拷贝Uboot Uboot Uboot到到SD SD卡里面卡里面dd if=./spi_512m.bin of=/dev/if=./spi_512m.bin of=/dev/sde sde bs bs=1 count=442=1 count=442dd if=./spi_512m.bin of=/dev/if=./spi_512m.bin of=/dev/sde sde bs bs=512 skip=1 seek=1=512 skip=1 seek=1其中其中if if if 标识输入文件的名字标识输入文件的名字标识输入文件的名字,,也就是说你要烧入的也就是说你要烧入的uboot uboot 的名字的名字。
龙芯PMON常用命令说明
龙芯PMON常用命令说明PMON版本: V3.3-20150320(3A2H开发板)本文罗列一些PMON的常用命令,并稍加说明,这些命令在官方文档上可以查到,但实际验证发现存在差异。
本文给出当前PMON版本上经过实际验证可用的命令。
通用的简单命令如reboot、date等就不再文中阐述了。
目录目录 (2)1.帮助命令 H (3)2.读写环境变量 SET/UNSET (4)3.显示设备信息 DEVLS (5)4.显示存储器分区信息 FDISK (6)5.寄存器读写模式 PCS (7)6.读寄存器 D (7)7.写寄存器 M (8)8.加载文件 LOAD (9)9.运行内核 G (9)10.设置网卡MAC SETMAC (10)11.设置临时网卡IP IFADDR/IFCONFIG (10)12.设置自发执行 AUTOCMD (10)13.网络测试 PING (11)14.内核地址指定 (11)15.内核运行参数 (12)1.帮助命令 h两种常用使用方式,h 查看所有命令,h xxx查看xxx命令的说明。
按空格键会回车键继续,按Q键返回。
2.读写环境变量 set/unset三种常用使用方式,set 查看所有环境变量,set aaa查看环境变量aaa的值,set aaa bbb将aaa的值设为bbb。
按空格键会回车键继续,按Q键返回。
如果不需要某环境变量,可用unset xxx来清除该变量。
如果xxx是系统变量,会恢复为默认值,如果不是则该变量被直接删除。
当然也可以再用set命令设回。
3.显示设备信息 devls4.显示存储器分区信息 fdisk5.设置MTD分区mtdparts查看分区:mtdparts设置分区:set mtdparts 'nand-flash:10M@0(kernel)ro,-(rootfs)'其中10M@0指将开始的10M空间设为mtd0区,用作内核区。
6.擦除存储器 mtd_erase跳过坏块擦除mtd_erase mtd0mtd_erase mtd1不跳过坏块擦除mtd_erase /dev/mtd0rmtd_erase /dev/mtd1r7.烧写文件 devcp烧写内核到mtd0分区devcp tftp://192.168.1.180/vmlinux /dev/mtd0烧写文件系统到mtd1分区devcp tftp://192.168.1.180/rootfs-yaffs2.img /dev/mtd1c注意修改IP,并打开主机端ftp。
嵌入式linux烧录步骤
嵌入式linux烧录步骤嵌入式Linux的烧录过程可以根据具体的开发板、芯片或厂商而有所不同,但一般步骤如下:准备工作:1.获取固件:下载或编译适用于你的嵌入式设备的Linux内核镜像和根文件系统。
2.连接烧录设备:将开发板或目标设备通过USB、JTAG或其他适配器连接到计算机。
烧录过程:1.烧录工具选择:根据硬件和厂商提供的指南选择适当的烧录工具,比如dd命令、flashcp、U-Boot工具等。
2.擦除存储器(如果需要):如果需要擦除存储器(如闪存),可以使用工具进行擦除。
注意备份数据(如果需要)。
3.烧录内核镜像:使用烧录工具将预编译或自定义的Linux内核镜像烧录到设备的闪存中。
示例命令(使用dd命令烧录)sudo dd if=your_kernel_image of=/dev/sdX bs=4Mif=指定输入文件,of=指定设备路径(请替换为你的设备路径),bs=指定块大小。
4.烧录根文件系统:将根文件系统烧录到设备的闪存或存储介质中。
示例命令(使用dd命令烧录)sudo dd if=your_rootfs_image of=/dev/sdX bs=4M5.配置启动选项:根据需要,配置引导加载程序(如U-Boot)以引导新烧录的内核和文件系统。
6.断开连接并启动设备:完成烧录后,断开连接并重新启动嵌入式设备,使其加载新的内核和根文件系统。
注意事项:●在执行烧录操作之前,请确保你理解并确认要烧录的目标设备和存储介质。
●仔细阅读并遵循硬件厂商提供的烧录指南和文档。
●在烧录过程中小心操作,避免误操作导致数据丢失或损坏设备。
●这些步骤提供了一般性的指南,实际操作可能因设备、开发板和硬件环境而有所不同。
使用busybox制作rootfs
使⽤busybox制作rootfsBuild Busybox as a static binary(no shared libs),如果选择上,则busybox将以静态形式进⾏编译,否则将以动态⽅式编译。
此外,还需要对交叉编译环境进⾏配置,选择其中的Cross Compiler Perfix,输⼊交叉编译器的前缀,我们的嵌⼊式平台上使⽤的是arm-uclinux-linu TAG:1 获取源码解压从busybox的官⽅主页 ,下载busybox的源码,⽬前最新的版本为busybox-1.13.3.tar.bz2#tar –jvxf busybox-1.13.3.tar.bz2进⼊解压后的busybox源码⽬录#cd busybox-1.13.32 配置busybox步骤跟编译linux内核时很像#make menuconfig出现⼀个图形界⾯,选择Busybox Settings,这⾥可以对编译、安装以及调试等模式进⾏配置。
然后选择Build Options,对交叉编译器以及编译⽅式进⾏配置。
其中的第⼀项是Build Busybox as a static binary(no shared libs),如果选择上,则busybox将以静态形式进⾏编译,否则将以动态⽅式编译。
此外,还需要对交叉编译环境进⾏配置,选择其中的Cross Compiler Perfix,输⼊交叉编译器的前缀,我们的平台上使⽤的是arm-uclinux-linux的交叉编译⼯具。
这⾥我们先选择静态编译,动态⽅式的稍后再讲,注意Build with Large File Support (for accessing files > 2 GB)不要选(默认是选上的),否则编译后会出现如下错误:miscutils/lib.a(readahead.):In function ‘readahead_main’readahead.(.text.readahead_main+0×70):undefined reference to ‘readahead’collect2:ld returned 1 exit statusmake :***[busybox_unstripped ]Error 13 编译busybox#make4 安装busybox#make install可以采⽤perfix参数安装到指定⽬录下,格式为:make install prefix=xxx⽬录,如果不特别指定,将默认在busybox源码⽬录下⽣成⼀个_install⽬录。
2410LINUX系统烧写操作说明
2410 linux系统烧写操作说明烧写操作需要在windows下进行,所需文件在光盘中的img目录和flashvivi目录下提供。
整个烧写过程包括烧写vivi、kernel、root三个步骤,除此我们还要烧写yaffs.tar.bz2,这四个文件都存放在img目录中。
vivi ----linux操作系统启动的bootloader;zImage----linux操作系统内核;root.cramfs----根文件系统;yaffs.tar----应用程序一、烧写vivi1.把并口线插到pc机的并口,并把并口与JTAG相连,JTAG与开发板的14针JTA T口相连,打开24102.把整个GIVEIO目录(在flashvivi目录下)拷贝到C:\WINDOWS 下,并把该目录下的giveio.sys文件拷贝到c:/windows/system32/drivers下。
3.在控制面板里,选添加硬件>下一步>选-是我已经连接了此硬件>下一步>选中-添加新的硬件设备>下一步>选中安装我手动从列表选择的硬件>下一步>选择-显示所有设备>选择-从磁盘安装-浏览,指定驱动为C:\WINDOWS\GIVEIO\giveio.inf文件,点击确定,安装好驱动4.新建一目录,把sjf2410(在flashvivi目录下)和要烧写的vivi拷贝到该目录下,在程序-附件-msdos下,进入该目录,运行sjf2410-s 命令如下:sjf2410 /f:vivi在此后出现的三次要求输入参数,第一次是让选择Flash,选0;第二次是选择jtag对flash的两种功能,也选0;第三次是让选择起始地址,选0此后就等待大约3-5分钟的烧写时间,当VIVI 烧写完毕后选择参数2,退出烧写。
5.烧录后关闭2410,拔掉JTAG与开发板的连线,并用串口线连接pc和2410;6.打开超级终端,先按住pc机“Back Space”键,然后启动2410,进入vivi>二、vivi下环境配置启动tftp服务配置开发板ip:ifconfig ip 192.168.1.13配置服务器ip:ifconfig server 192.168.1.15保存:ifconfig save启动window下tftp服务:运行tftp32.exe程序即可,注意不要随意更改ip,360会把此程序视为木马,退出360即可。
烧写linux镜像到emmc中的方法
烧写linux镜像到emmc中的方法
要烧写 Linux 镜像到 emmc 中,需要遵循以下步骤:
1. 准备好 emmc 芯片,并将其连接到计算机上。
2. 下载并安装相应的烧写工具,例如 imgburn 或 fujitsu_eraser。
3. 打开 imgburn 或 fujitsu_eraser 工具,并选择要烧写的镜像文件。
4. 选择 emmc 芯片,并选择烧写选项,例如选择所有可用的存储空间进行烧写。
5. 等待烧写过程完成,这可能需要一段时间。
烧写过程中需要注意以下几个点:
1. 在烧写之前,请确保 emmc 芯片已经正确连接到计算机,并且计算机已经启动。
2. 确保镜像文件是正确的,并且已经正确格式化。
3. 如果镜像文件包含多个分区,请确保在 emmc 中正确地格式化这些分区。
4. 在烧写之前,请确保已经备份了重要的数据,以防烧写过程中出现错误。
烧写过程可能会对 emmc 芯片造成损害,因此请谨慎操作。
如果不确定如何烧写镜像到 emmc 中,建议先学习相关知识或寻求专业人士的帮助。
imx5的板子烧写系统的方法
imx5的板子烧写系统的方法imx5的板子烧写系统的方法,到目前为止试过如下几种:一、通过MfgTools烧写1、用ltib工具编译好u-boot.bin,uImage,rootfs2、跳到rootfs目录下,使用tar -jcvf rootfs.tar.bz2 *命令,将目录下所有文件打包3、将编译完成的三个文件u-boot.bin,uImage,rootfs.tar.bz2拷贝到MfgTools/Linux/目录中。
4、将板子跳转到烧写模式,给板子加电,打开PC机上MfgTool.exe应用程序,接上OTG线,从MfgTool工具的option里面选择烧写的部位,为emmc或SD卡。
扫描设备完成后,点击开始。
5、烧写完成后(mfgtool进度条变为绿色),关掉板子的电源,拔掉OTG线,调整板子为启动模式,加电。
板子能进到刚烧写的系统中了。
注:烧写的时候对uImage的大小有要求,不要超过3M,若超过了需要在profile中更改ucl.xml文件二、通过SD卡烧写1、需要一个SD卡读卡器,将其插在PC机上,使用linux系统对其进行烧写2、dd if=u-boot.bin of=/dev/sda bs=512 seek=2 skip=2将uboot烧到SD卡中3、dd if=uImage of=/dev/sda bs=512 seek=2048 将uImage烧到SD卡中4、fdisk /dev/sdaudnp18192[Enter]w将SD卡原有分区删除,并新建一个分区,从8192Byte开始到终点结束。
5、mkfs.ext3 /dev/sda1将SD卡新建的分区格式化为ext3格式mount /dev/sda1 /mnt将格式化完成的分区挂载到/mnt目录下6、tar -jxvf rootfs.tar.bz2 -C /mnt将文件系统解压到SD卡的分区中。
注意:tar命令-j为bz2格式,x为解压,v为浏览,f为新建文件,-C为解压到其他目录,必须要加的cp uImage u-boot.bin rootfs.tar.bz2 /mnt/root将烧写系统所需要的三个文件拷贝到SD卡的分区中umount /mnt卸载掉SD卡的分区7、将SD卡拔出插入板子上的卡座中,将板子调整为从SD卡启动,加电,板子能启动到系统中8、ls -l /dev/mmc*查看到DOM盘为/dev/mmcblk1fdisk /dev/mmcblk1udnp18192[Enter]w将DOM盘原有分区删除,并新建一个分区,从8192Byte开始到终点结束。
双分区烧写
双分区烧写一、引言双分区烧写是一种用于嵌入式系统开发的技术,它允许在设备上同时存在两个独立的固件分区。
这种技术的主要优势在于可以实现无缝升级和回滚,提高了系统的可靠性和稳定性。
本文将介绍双分区烧写的原理、应用场景以及实施步骤。
二、双分区烧写的原理双分区烧写的原理是将设备的存储空间划分为两个独立的分区,一般称为A区和B 区。
其中,A区是当前正在运行的固件分区,B区是备份固件分区。
在正常情况下,设备会从A区启动,并运行A区的固件。
当需要进行固件升级时,新的固件将被写入B区。
然后,设备会在下一次启动时从B区启动,并运行B区的固件。
这样,如果出现问题,可以轻松地回滚到之前的稳定版本。
三、双分区烧写的应用场景双分区烧写广泛应用于各种嵌入式系统中,特别是对于需要保证系统稳定性和可靠性的场景。
以下是几个常见的应用场景:1. IoT设备在物联网设备中,双分区烧写可以确保设备的固件始终保持最新且稳定。
通过在B区烧写新的固件版本,可以实现无缝升级,同时保留A区的备份,以备不时之需。
这对于需要长期运行的设备来说尤为重要,因为它们需要定期更新功能和修复漏洞。
2. 工业控制系统在工业控制系统中,稳定性和可靠性是至关重要的。
由于这些系统通常运行在恶劣的环境下,一旦固件出现问题,可能会导致生产中断或安全事故。
利用双分区烧写技术,可以确保在固件升级过程中不会停机,并且可以随时回滚到之前的稳定版本,从而最大程度地减少风险。
3. 汽车电子系统汽车电子系统也是双分区烧写的重要应用领域之一。
通过将A区用于当前运行的固件,B区用于备份固件,可以实现车辆的无缝升级和回滚。
这对于修复安全漏洞和添加新功能至关重要,同时也提高了车辆系统的可靠性。
四、双分区烧写的实施步骤下面是执行双分区烧写的基本步骤:1. 划分存储空间首先,需要将设备的存储空间划分为两个独立的分区,分别为A区和B区。
这可以通过在设备启动时读取分区表并进行分区操作来完成。
2. 写入固件接下来,将当前固件写入A区,并将备份固件写入B区。
ubifs烧写到nandflash中的几种方法--mfgtool用的是第三种
ubifs烧写到nandflash中的几种方法--mfgtool用的是第三种折腾了好几天,突然柳暗花明,继而思之,发现原来是出门就走错了路,悲剧之余,写下此笔记,以省自己,警他人。
正题,关于UBIFS的介绍在此就不多说,详见:/faq/ubifs.html/faq/ubi.html1. UBIFS文件系统镜像的制作过程1.1 所需的工具制作UBIFS镜像所需的工具有mkfs.ubifs和ubinize,可以通过以下方式获取到此两个工具:1. 方法一:从官网通过git工具下载源码,编译可得之,下载命令:1.git clone git:///mtd-utils.git下载到源码后,编译需要的的软件包有:uuid-dev和lzo,uuib-dev可以通过apt-get直接安装,lzo需要手动下载编译,官方网站为:/opensource/lzo/download/2. 方法二:安装mtd-utils工具包,安装命令为:1.sudo apt-get install mtd-utils不过此方法不保证安装的工具可以正常使用(可能版本过低)。
1.2 UBIFS镜像的制作有了mkfs.ubifs和ubinize两个工具后,就可以制作UBIFS镜像了,注意:在PC上ubuntu使用mkfs.ubifs and ubinize,则我们要用普通的gcc来编译它们,同时在ubuntu上装上lzo库:sudo apt-get install liblzo2-dev具体步骤如下:1. 使用mkfs.ubifs命令将某个文件夹制作为UBIFS镜像,具体命令为:1.mkfs.ubifs -r /tmp/rootfs -m 2048 -e 126976 -c 992 -o ubifs.img以上命令的含义为将/tmp/rootfs文件夹制作为UBIFS文件系统镜像,输出的镜像名为ubifs.img,其中最小输入输出大小为2KiB(2048bytes),一般为页大小;逻辑可擦除块大小为126976=124KiB=(每块的页数-2)*页大小=(64-2)*2KiB ;(每个逻辑块有2页不能被擦除?)最多逻辑可擦除块数目为992(992*128KiB=124MiB),这个可根据ubi volume来设置,实际上是设置此卷的最大容量。
imx5的板子烧写系统的方法 (2)
imx5的板子烧写系统的方法三、从DOM盘使用uboot通过网络烧写1、在uboot下,setenv ethaddr 12:23:34:45:56:67setenv ipaddr 192.168.0.247setenv serverip 192.168.0.140saveenv设置板子的ip地址及主机的ip地址2、将板子通过网线与PC机关连起来,在PC机上打开Tftpd32.exe,设置好目录(将需要用到的所有文件放在该目录下)及server的ip地址(为PC机ip)。
3、在uboot下,使用如下命令tftpboot uImage0tftpboot 70b00000 initramfs.cpio.gz.uboot将所需的内核文件及ramdisk文件系统传到板子的内存中4、bootm 70800000 70b00000启动该内核及文件系统,进入到系统中。
5、ls /dev/*发现没有mmc设备,从完好的系统中查得mmc的主设备号为179,从设备号为0mknod /dev/mmcblk0 b 179 0创建了一个mmc的节点fdisk /dev/mmcblk0发现该节点正常udnp18192[Enter]w同样删除其原有分区,重新新建一个分区。
6、ls /dev/mmcblk0p1发现没有该设备,但是我们已经从DOM盘分了一个新区mknod /dev/mmcblk0p1 b 179 1创建该分区的设备节点,主从设备号也是从好的系统中找到的,因为驱动没有变过,其驱动的设备号也没变。
mkfs.ext3 /dev/mmcblk0p1将该分区格式化mount /dev/mmcblk0p1 /mnt将该设备挂载到/mnt目录下7、使用tftp命令将需要烧写的文件下载到板子上tftp -g -l u-boot.bin 192.168.0.140tftp -g -l uImage 192.168.0.140tftp -g -l rootfs.tar.bz2 192.168.0.140文件为要烧写到DOM盘中的文件8、dd if=u-boot.bin of=/dev/mmcblk0 bs=512 seek=2 skip=2将uboot烧到DOM盘中(若不想更换uboot不使用这条命令即可)dd if=uImage of=/dev/mmcblk0 bs=512 seek=2048 将uImage烧到DOM盘中tar -jxvf rootfs.tar.bz2 -C /mnt将文件系统解压到DOM盘的分区中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
准备工作
• 将我们PC机的串口和板子的串口连接起来, 打开超级终端,选择COM1口,并作相应的 配置。
• 将网线连接好。 • 进入到u-boot模式下。
1、配置bootloader
• 由于要通过tftp下载文件,所以需要配置tftp的网络ip, 在配置之前打开img下的tftp32.exe程序。tftp32.exe打 开后会自动寻找到PC机上网卡的IP,如果IP不正确可以通 过IP的下拉框寻找到本机的IP。
2、下载u-boot的配置脚本文件
• 在提示符下输入tftp 0x030008000 mini2410.img
• 执行配置脚本,使用u-boot的autoscr命令
• 设置之后,我们可以通过printenv指令,查 看u-boot的环境变量中已经添加了新的变量
• 这时,我们的u-boot的配置就结束了。现在 除了你要修改ip地址之外,就不需要再更改 其它的配置了
3、烧写根文件系统
• 执行烧写根文件系统的命令,输入run update_rootfs指令
4、更新u-boot
• 在提示符下输入run update_boot指令。
5、应用程序下载
• 在u-boot下输入boot启动linux系统。
Hale Waihona Puke •END• 注意:一定要保证其显示IP为我们PC机的IP。不要随意在 tftp32中settings中改变IP,否者会导致tftp32无法正常 使用。也可以使用虚拟机linux系统上的tftp。
• 在提示符下输入setenv serverip 192.168.1.234,此IP为我们PC机IP,再输 入setenv ipaddr 192.168.1.193,此IP为 我们开发板的IP。最好输入saveenv,保存 设置,之后就不需要改动了。