ViVi常用命令.docx
- 文档编号:10175310
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:17
- 大小:21.80KB
ViVi常用命令.docx
《ViVi常用命令.docx》由会员分享,可在线阅读,更多相关《ViVi常用命令.docx(17页珍藏版)》请在冰豆网上搜索。
ViVi常用命令
ViVi常用命令
在下载模式下,vivi为用户提供一个命令行接口,通过该接口可以使用vivi提供的一些命令。
启动vivi时,在超级终端界面中键入任意键(除enter外)进入vivi命令界面,字符提示为“vivi>”
----------------------------------------------------------------------
reset命令复位Arm9系统
----------------------------------------------------------------------
help命令
help显示开发板上vivi支持的所有命令
paramhelp显示param命令的用法
----------------------------------------------------------------------
part命令
part命令用于对分区进行操作。
通过parthelp可以显示系统对part
系列命令的帮助提示。
partshow显示分区信息
partaddpartnamepart_start_addrpart_lengflag添加分区,参数flag为分区类型
partdelpartname删除分区
partsave保存part分区信息
partreset恢复为系统默认part分区
----------------------------------------------------------------------
load命令
load命令下载程序到存储器中(Flash或者RAM中)。
通过loadhelp可以显示系统对load系列命令的帮助提示。
loadflashpartnamex使用xmodom协议通过串口下载文件并且烧写带partname分区
例:
-loadflashvivix//注意,这里的vivi是分区名
-loadflashkernelx
-loadflashrootx
loadrampartnameoraddrx使用xmodom协议通过串口下载文件到内存中
----------------------------------------------------------------------
param命令
param命令用于对bootloader的参数进行操作。
通过paramhelp可以
显示系统对param系列命令的帮助提示。
paramshow命令用于显示bootloader的当前参数值。
paramreset将bootloader参数值复位成系统默认值。
paramsetparamnamevalue设置参数值
paramsetlinux_cmd_line”linuxbootparam”设置linux启动参数,参数linuxbootparam表示要设置的linuxkernel命令行参数。
paramsave保存参数设置
----------------------------------------------------------------------
boot命令
boot命令用于引导linuxkernel启动。
通过boothelp可以显示系统对boot命令的帮助提示。
boot默认方式启动
bootramramaddrlenth启动sdram中ramaddr处长度为lenth的linux内核。
----------------------------------------------------------------------
bon命令
bon命令用于对bon分区进行操作。
通过bonhelp可以显示系统对bon
系列命令的帮助提示。
bon分区是nandflash设备的一种简单的分区管理方式。
bonpartinfo命令用于显示系统中bon分区的信息。
bonpart命令用于建立系统的bon分区表。
bon分区表被保存到nandflash
的最后0x4000个字节中,即在nandflash的0x03FFC000~0x33FFFFFF范围内,分区表起始于0x03FFC000。
例如分为3个区:
0~192k,192k~1M,1M~
vivi>bonpart0192k1M
doingpartition
size=0
size=196608
size=1048576
checkbadblock
part=0end=196608
----------------------------------------------------------------------
go命令
go命令用于跳转到指定地址处执行该地址处的代码。
goaddr跳转到指定地址运行该处程序。
以上是一些常用的vivi命令,具体语法可通过相应的help命令查看。
*****************************************************************
在超级终端界面中键入任意键(除enter外)进入vivi命令界面
vivi>
输入help可以见到开发板上的vivi支持的命令
vivi>help
Usage:
cpu[{cmds}]--Managecpuclocks
bon[{cmds}]--Managethebonfilesystem
reset--Resetthesystem
param[set|show|save|reset]--set/getparameter
part[add|del|show|reset]--ManageMTDpartitions
mem[{cmds}]--ManageMemory
load{...}--LoadafiletoRAM/Flash
go--jumpto
dump--Display(hexdump)arangeofmemory.
call--jump_with_returnto
boot[{cmds}]--Bootinglinuxkernel
help[{cmds}]--Helpabouthelp?
display--Setthedisplayformat
flash[{cmds}]--ManageFlashmemory
wince[rewrite]--bootwincefromethernetorf
lashbyeboot
os--setthedefaultos
mem命令mem系列命令用于对系统的内存进行操作
vivi>memhelp
'mem'commandusage:
----------commandparameterlist-----------
memsize--probedramsize
memread--readaword(4bytes)fromspecialdramaddress
memwrite--writeaword(4bytes)intospecialdram
address
memtest[]--memorytest
-----------subcommandlist-------------
memcmp--compare
memcopy--copymemoryfrom
to ddr> meminfo--displaymemoryinfomation memreset--resetmemorycontrolregister memsearch--searchmemoryaddress thatcontainvalueinthespecialmemoryaddressrange vivi>meminfo RAMInformation: Defaultramsize: 64M Realramsize: 64M Freememory: 61M RAMmappedto: 0x30000000-0x34000000(SDRAM映射的地址范围) Flashmemorymappedto: 0x10000000-0x12000000(Flash映射的地址范围) Availablememoryregion: 0x30000000-0x33de4000(用户可以使用的有效的内存区域地址范围) Stackbaseaddress: 0x33debffc(栈的基地址) Currentstackpointer: 0x33debc78(当前栈指针的值) Memorycontrolregistervlaues(S3C2410的内存控制寄存器的当前值) BWSCON=0x22111d10 BANKCON0=0x00000700 BANKCON1=0x00000700 BANKCON2=0x00001f7c BANKCON3=0x00000700 BANKCON4=0x00000700 BANKCON5=0x00000700 BANKCON6=0x00018001 BANKCON7=0x00018001 REFRESH=0x008e01e9 BANKSIZE=0x000000b1 MRSRB6=0x00000020 MRSRB7=0x00000020 vivi> load命令 load命令下载程序到存储器中(Flash或者RAM中)过loadhelp可 以显示系统对load系列命令的帮助提示 vivi>loadhelp Usage: load[|] 关键字参数flash和ram用于选择目标介质是Flash还是RAM 到Flash中还是先要下载到RAM中(临时下载到SDRAM的起始地址处 0x30000000保存一下,然后再转写入FLASH),然后再通过Flash驱动程 序提供的写操作,将数据写入到Flash中选择了flash参数,那名 到底是对NORFlash操作还是对NANDFlash操作,这取决于bootloader 编译的过程中,所进行的配置,这就要看配置的时候将MTD设备配置成NOR Flash还是NANDFlash 参数partname和addrsize二者选其一,partname是vivi的MTD分区表中 的分区名MTD分区的起始地址;addr和 size是让用户自己选择下载的目标存储区域,而不是使用vivi的MTD分区, addr表示下载的目标地址,size表示下载的文件大小,单位字节,size参数 不一定非要指定得和待下载的文件大小一样大,但是一定要大于等于待下载 的文件的字节数 关键字参数xy和z分别表示从PC主机上下载文件到ARMer9系统中, 采用哪种串行文件传送协议,x表示采用XModem协议,y表示采用Ymodem协议,z表示采用ZModem协议请注意目前该bootloadervivi还没有 实现ZModem协议,所以该参数只能选择x和y 关键字参数t应该是开发板vivi增加的,是tftp下载! 很好用的! 速度比jtag要快多了! 开发板的vivieboot烧写都要通过load命令 如: 要烧写eboot.nb0到flash的eboot分区,首先在超级中断进入vivi的shell,输入 loadflasheboott 使用交叉网线连好PC与开发板,把eboot.nb0拷贝到于mtftp.exe同一目录下,在windows命令行输入 mytftp-i192.168.0.15PUTeboot.nb0 等待烧写完成即可 param命令param系列命令用于对bootloader的参数进行操作通过paramhelp可以 显示系统对param系列命令的帮助提示 vivi>paramhelp Usage: paramhelp--Helpaout'param'command paramreset--Resetparametertabletodefaulttable paramsave--Saveparametertabletoflashmemeory paramset--Resetvalueofparameter paramsetlinux_cmd_line"..."--setbootparameter paramsetwince_part_name"..."--setthenameofpartitionwichwince willbestoredin paramshow--Displayparametertable vivi> paramshow可以显示可以设置的参数 vivi>paramshow Numberofparameters: 19 namehexinteger ------------------------------------------------------------- mach_type000000c1193//机器类型,193表示S3C2410的开发系统 media_type000000033//媒介类型,即指示了bootloader从哪个媒介启动起来的 boot_mem_base30000000805306368 /*引导linux内核启动的基地址映像将被从Flash中拷贝到 boot_mem_base+0x8000的地址处,内核参数将被建立在 boot_mem_base+0x100的地址处*/ baudrate0001c200115200//bootloader启动时,默认设置的串口波特率 /*以上三个参数和Xmodem文件传送协议相关 xmodem_one_nak表示接收端(即ARMer9系统这端)发起第一个NAK信 号给发送端(即PC主机这端)到启动; xmodem_initial_timeout表示接收端(即ARMer9系统这端)启动XModem 协议后的初始超时时间,第一次接收超时按照这个参数的值来设置,但是超 时一次后,后面的超时时间就不再是这个参数的值了,而是xmodem_timeout 的值; xmodem_timeout表示在接收端(即ARMer9系统这端)等待接受发送端(即 PC主机这端)送来的数据字节过程中,如果发生了一次超时,那么后面的 超时时间就设置成参数xmodem_timeout的值了 这三个参数不需要修改,系统默认的值就可以了,不建议用户去修改这几个 参数值*/ xmodem_one_nak: 000000000 xmodem_initial_timeout: 000493e0300000 xmodem_timeout: 000f42401000000 /*ymodem_initial_timeout ymodem_initial_timeout表示接收端(即ARMer9系统这端)在启动了 YModem协议后的初始超时时间 这个参数不需要修改,系统默认的值就可以了,不建议用户去修改这几个参 数值*/ ymodem_initial_timeout: 0016e3601500000 /*boot_delay是bootloader自动引导linuxkernel功能的延时时间*/ boot_delay: 003000003145728 os: WINCE display: VGA640X480 ip: 192.168.0.15 host: 192.168.0.1 gw: 192.168.0.1 mask: 255.255.255.0 wincesource: 000000011 wincedeploy: 000000000 mac: 00: 00: c0: ff: ee: 08 wincepartname: wince Linuxcommandline: noinitrdroot=/dev/mtdblock/3init=/linuxrcconsole=ttyS0 /*Linuxcommandline不是bootloader的参数,而是kernel启动的时候,kernel 不能自动检测到的必要的参数些参数需要bootloader传递给linux kernelLinuxcommandline就是设置linuxkernel启动时,需要手工 传给kernel的参数*/ part命令part命令用于对MTD分区进行操作 vivi>partshow mtdpartinfo.(7partitions) nameoffsetsizeflag ------------------------------------------------ vivi: 0x000000000x000200000128k param: 0x000200000x00010000064k kernel: 0x000300000x001c000001M+768k root: 0x002000000x0040000004M eboot: 0x006000000x000800000512k wince: 0x006800000x01c80000028M+512k flashdisk: 0x023000000x01d00000029M MTD分区是针对Flash(NORFlash或者NANDFlash)的分区,以便于对 bootloader对Flash进行管理 partadd命令用于添加一个MTD分区 命令的详细格式如下: partaddnameoffsetsizeflag 参数name是要添加的分区的分区名 参数offset是要添加的分区的偏移(相对于整个MTD设备的起始地址的偏 移,在ARMer9系统中不论配置的是NORFlash,还是NANDFlash,都只 注册了一个mtd_info结构,也就是说逻辑上只有一个MTD设备,这个MTD 设备的起始地址为0x00000000); 参数size是要添加的分区的大小,单位为字节; 参数flag是要添加的分区的标志,参数flag的取值只能为以下字符串(请注 意必须为大写)或者通过连接符| 这个标志表示了这个分区的用途 “BONFS”作为BONFS文件系统的分区; “JFFS2”作为JFFS2文件系统的分区; “LOCK”该分区被锁定了; “RAM”该分区作为RAM使用 例如,添加新的MTD分区mypart vivi>partaddmypart0x5000000x100000JFFS2 mypart: ōffset=0x00500000,size=0x00100000,flag=8 partdel命令用于删除一个MTD分区 命令的详细格式如下: partdelname 参数name是要删除的MTD分区的分区名 bon命令用于对BON分区进行操作 BON分区是只针对NANDFlash设备的一种简单的分区管理方式 Bootloader支持BON分区,同时Samsung提供的针对S3C2410移植的linux 版本中也支持了BON分区,这样就可以利用BON分区来加载linux的root 根文件系统了MTD分区和BON分区,当ARMer9系统配置 了NANDFlash作为MTD设备,那么MTD分区和BON分区都在同一片 NANDFlash上 boot命令用于引导linuxkernel启动 vivi>boothelp Usage: boot--bootingkernel valueofmedia_type(locationofkernelimage 1=RAM 2=NORFlashMemory 3=SMC(OnS3C2410) boot--bootfromspecificmtdpartition boot boothelp--helpabout'boot'command boot关键字后面media_type必须指定媒介类型,因为boot命令对不同媒介的处理方式 是不同的,例如如果kernel在SDRAM中,那么boot执行的过程中就可以 跳过拷贝kernel映像到SDRAM中这一步骤了 Boot命令识别的媒介类型有以下三种: ram表示从RAM(在ARMer9系统中即为SDRAM)中启动linuxkernel, linuxkernel必须要放在RAM中 nor表示从NORFlash中启动linuxkernel,linuxkernel必须已经被烧写到 了NORFlash中 smc表示从NANDFlash中启动linuxkernel,linuxkernel必须已经被烧写 到了NANDFlash中 取值参数意义如下: 参数mtd_part是MTD分区的名MTD设备的一个 分区中启动linuxkernel,kernel映像必须被放到这个分区中; 分别表示linuxkernel起始地址和kernel的大小为什么要指定 kernel大小呢? 因为kernel首先要被copy到boot_mem_base+0x8000的 地方,然后在boot_mem_base+0x100开始的地方设置内核启动参数,要 拷贝kernel,当然需要知道kernel的大小啦,这个大小不一定非要和kernel 实际大小一样,但是必须许大于等于kernel的大小,单位字节 reset命令 复位Arm
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ViVi 常用命令