目录
0. 开机时按c键进入pmon模式 (自启动模式时)
1、帮助命令 h
2、显示设备信息 devls
3.重启:reboot
4、设置环境变量 set/unset
5.查询环境变量:env
6.网络设置相关命令:
①设置IP:ifconfig,ifaddr,
②检查网络是否连通:ping
7.set命令:
8.unset命令:
9.date:不支持
10.加载命令load
11.加载文件系统:initrd
12.执行命令 g
13.查询系统分区命令 fidsk 设备节点 (不支持)
14.查询pmon版本号 vers
15.拷贝命令 devcp A B 将文件A拷贝到位置B
16.pci设备扫描命令 pciscan
17.循环执行命令 loop (不支持)
18. 寄存器读命令
19.寄存器写命令
20.设备树相关命令 (不支持)
0. 开机时按c键进入pmon模式 (自启动模式时)
PMON下常用命令
在进入系统前按 “c” 进入pmon的命令行。
如设置自启动的话(pmon自动加载内核、启动文件系统),需要设置环境变量a l / al/al/al1、$append。
1、帮助命令 h
有两种使用方式:
① h 查看所有命令
② h xxx 查看命令xxx的说明
按回车或空格可以继续,按q键返回
2、显示设备信息 devls
PMON> devls
Device name Type
syn0 IFNET #以太网网口名词
loopdev0 DISK
3.重启:reboot
4、设置环境变量 set/unset
1)set有三种使用方式:
① set xxx aaa 将xxx环境变量的值设为aaa
② set xxx 查看环境变量aaa的值,只执行一个set查看所有环境变量
2)unset 删除环境变量
① unset xxx
5.查询环境变量:env
当最后一行显示more...时按回车可以显示更多信息,其中al1 为自动加载内核的镜像位置 ,appen用来设置自启动参数,包括调试串口的位置和波特率
PMON> env
ethaddr = ff:ff:ff:ff:ff:ff
pll_reg0 = 0x00000026
pll_reg1 = 0x9239aa00
xres = 800
yres = 480
depth = 16
memsize = 64 #64位总线
highmemsize = 0
cpuclock = 200,000,000
busclock = 100,000,000
systype = FCR
brkcmd = "l -r @cpc 1"
datasize = -b [-b -h -w]
dlecho = off [off on lfeed]
dlproto = none [none XonXoff EtxAck]
bootp = no [no sec pri save]
hostport = tty0
inalpha = hex [hex symbol]
inbase = 16 [auto 8 10 16]
moresz = 10
prompt = "PMON> "
regstyle = sw [hw sw]
rptcmd = trace [off on trace]
trabort = ^K
ulcr = cr [cr lf crlf]
uleof = %
showsym = yes [no yes]
fpfmt = both [both double single none]
fpdis = yes [no yes]
TZ = UTC8
ifconfig = syn0:192.168.1.2
update_usb = no [no yes]
bootdelay = 8
syn0.ipaddr = 192.168.1.2
6.网络设置相关命令:
①设置IP:ifconfig,ifaddr,
前者功能强于后者,前者不仅可以设置网卡IP还可以查询网卡IP,但后者只能设置网卡IP。
具体设置方式为 ifconfig(ifaddr)加需要设置的网卡 加要设置的IP地址,三者用空格隔开
②检查网络是否连通:ping
PMON> ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1): 56 data bytes
64 bytes from 192.168.1.1: icmp_seq=12 ttl=128 time=0.867 ms
64 bytes from 192.168.1.1: icmp_seq=13 ttl=128 time=0.651 ms
64 bytes from 192.168.1.1: icmp_seq=14 ttl=128 time=0.574 ms
64 bytes from 192.168.1.1: icmp_seq=15 ttl=128 time=0.568 ms
64 bytes from 192.168.1.1: icmp_seq=16 ttl=128 time=0.611 ms
7.set命令:
①单独用set 可查看全部环境变量,set (变量)可查看对应变量
②设置环境变量 eg.永久设置IP地址 set ifconfig(网卡名):IP地址 ,然后回车,输入saveenv
PMON> set
ethaddr = ff:ff:ff:ff:ff:ff
pll_reg0 = 0x00000026
pll_reg1 = 0x9239aa00
xres = 800
yres = 480
depth = 16
memsize = 64
highmemsize = 0
cpuclock = 200000000
busclock = 100000000
systype = FCR
brkcmd = "l -r @cpc 1"
datasize = -b [-b -h -w]
dlecho = off [off on lfeed]
dlproto = none [none XonXoff EtxAck]
bootp = no [no sec pri save]
hostport = tty0
inalpha = hex [hex symbol]
inbase = 16 [auto 8 10 16]
moresz = 10
prompt = "PMON> "
regstyle = sw [hw sw]
rptcmd = trace [off on trace]
trabort = ^K
ulcr = cr [cr lf crlf]
uleof = %
showsym = yes [no yes]
fpfmt = both [both double single none]
fpdis = yes [no yes]
TZ = UTC8
ifconfig = syn0:192.168.1.2
update_usb = no [no yes]
bootdelay = 8
syn0.ipaddr = 192.168.1.2
PMON>
8.unset命令:
初始化环境变量 unset (环境变量名),回车后 输入saveenv
9.date:不支持
①直接输入date可查看系统时间
②设置系统时间set date yyyymmddhhff.ss(必须按按照该格式,y表示年份,m表示月份,d表示日,h表示小时,f表示分钟,s表示秒) ,设置完后保存
10.加载命令load
(我们可以在不同位置来加载内核,如:内存,ssd,u盘,tftp,nand),比如用u盘来加载内核,先用devls查看u盘节点(DISK类型),然后输入 load /dev/fs/fat@usb0/u盘中内核镜像的位置 (其中fs代表文件系统或内核,不论加载文件系统或加载内核,都需要输入fs,fat为u盘格式,usb0为u盘节点)
在ssd中加载内核的命令为: load /dev/fs/ext2@wd0/ssd中内核镜像的位置
在tftp中加载内核的命令为 :load tftp://服务器IP/tftp中内核镜像的位置
在mtd中加载内核的命令为: load /dev/mtd0/mtd中内核镜像的位置(其中mtd0为相应分区)
在内存中加载内核的命令为:load ram@0xffffffff(其中0xffffffff为相应地址)
使用命令烧写pmon:
在tftp中使用load烧写:load -r -f 0xbfc0000 tftp://服务器IP/gzrom-dtb.bin (其中 tftp://服务器IP 为服务器地址 gzrom-dtb.bin 为pmon镜像位置)
在u盘中使用load烧写 :load -r -f /dev/fs/fat@usb0/gzrom-dtb.bin
11.加载文件系统:initrd
在u盘中加载文件系统:initrd /dev/fs/fat@usb0/rootfs.cpio.gz
12.执行命令 g
(当pmon引导程序,内核,文件系统都加载完毕后就可以启动系统了)
13.查询系统分区命令 fidsk 设备节点 (不支持)
14.查询pmon版本号 vers
PMON: MakeTime: 2021-11-08 22:07:30
15.拷贝命令 devcp A B 将文件A拷贝到位置B
16.pci设备扫描命令 pciscan
17.循环执行命令 loop (不支持)
loop 循环查询次数 命令 比如查看三次系统时间 loop 3 date
18. 寄存器读命令
d1:读一个字节(unsigned char) d2:读两个字节(unsigned short) d4:读4个字节(unsigned long) d8:读8个字节(unsigned long long) dx 寄存器地址
19.寄存器写命令
m1:读一个字节(unsigned char) m2:读两个字节(unsigned short) m4:读4个字节(unsigned long) m8:读8个字节(unsigned long long)
mx 寄存器地址 要写入的值
20.设备树相关命令 (不支持)
print_dtb :查看设备树信息
print_dtb 相应节点位置
rm_dtb_node : 临时删除设备树信息,重启后失效