1、h--帮助
命令格式:
h [*|cmd..] on-line help
输入h,列举全部命令;使用如下:
PMON> h
Boot and Load
oload load memory from hostport
load load file
MyCmds
cp0s access cp0
disks select disk
d2 dump address half world
d8 dump address double word
m2 mofify address half world
m8 modify address double word
initkbd kbd_initialize
......
输入h 后跟一个命令,则列举出该命令的使用格式如下:
PMON> h set
set [[-t] name [value]] display/set variable
2、vers--显示PMON版本信息
命令格式:
vers [-a] print version info
使用如下:
PMON> vers -a
3A PMON: 2.00 for 3a2000 PMON2000 3.3 (Bonito) #1:Tue Nov 12 17:44:01 PST 2019
commit e1e98f63b4010b5071a00a168110e9b4d22c5a24
Author: XXX <xxx@loongson.cn>
#PMON版本号,编译时间戳,git commit id号,最后提交git作者。
3、date--设置时间
命令格式:
data [yyyymmddhhmm.ss] get/set date and time
使用如下:
PMON> date
Sat Jan 1 00:24:19 2000
#显示时间
PMON> date 202105201314.09
Thu May 20 13:14:09 2021
#设置时间
4、devls--列举出目前板卡现有的设备
命令格式:
devls [-an] list devices
-a show all device types
-n show network devices
使用如下:
PMON> devls
Device name Type
eth0 IFNET
eth1 IFNET
wd0 DISK
loopdev0 DISK
#设备名 设备类型 (eth0/1网络端口,wd0为硬盘)
5、load--加载文件
该命令主要用来加载内核/文件系统及烧写PMON等常规操作。
命令格式:
load [-beastifr] [-ooffs] load file
-s don't clear old symbols
-b don't clear breakpoints
-e don't clear exception handlers
-a don't add offset to symbols
-t load at top of memory
-i ignore checksum errors
-f flash_addr -o load_addr offsetr
-n don't load symbols
-y only load symbols
-v verbose messages
-w reverse endianness
-k prepare for kernel symbols
-o<offs> load offset
-r load raw file
path path and filename
加载内核:
PMON> load /dev/fs/ext2@wd0/boot/vmlinux
#加载位于第一块硬盘第一个分区的内核
PMON> load /dev/fs/ext2@wd1b/boot/vmlinux
#加载位于第二个硬盘第二分区的内核
#根据SATA口的先后顺序来列举SATA硬盘0/1/2...硬盘分区默认是第一分区,a代表第一分区,b为第二分区,c/d/e...
PMON> load /dev/fs/fat@usb0/vmlinux
#使用FAT格式的U盘中加载内核
PMON> load tftp://10.0.0.100/vmlinux
#使用tftp服务从远端加载内核,注意:先配置好网络IP
PMON> load /dev/fs/iso9660@cd0/boot/vmlinux
#使用光盘加载内核
在线更新PMON二进制:
PMON> load -r -f 0xbfc00000 /dev/fs/ext2@wd0/gzrom.bin
#使用硬件更新PMON二进制
PMON> load -r -f 0xbfc00000 /dev/fs/fat@usb0/gzrom.bin
#使用U盘更新PMON二进制
PMON> load -r -f 0xbfc00000 tftp://10.0.0.100/gzrom.bin
#使用网络tftp服务更新PMON二进制
PMON> load -r -f 0xbfc00000 /dev/fs/iso9660@cd0/gzrom.bin
#使用光盘更新PMON二进制
注意:可以使用fload 来替换 load -r -f。
6、bl--引导配置文件
命令格式:
bl -d cdrom/ideboot_config_file Load Boot menu from config file
使用如下:
PMON> bl /dev/fs/ext2@wd0/boot/boot.cfg
#引导硬盘boot目录中的boot.cfg系统启动配置文件。
7、initrd--引导ramdisk
命令格式:
initrd initrd/initramfs path load initrd/initramfs image
使用如下:
PMON> initrd /dev/fs/fat@usb0/boot/initramfs.img
#挂载initramfs.ing文件系统
8、g--执行程序
命令格式:
g [-s] [-bbpadr] [-eadr] [--args] start execution (go)
-s don't set client sp
-e <adr> start address
-b <bptadr> temporary breakpoint
-- <args> args to be passed to client
引导内核:
PMON> g console=ttyS0,115200 console=tty root=/dev/sda1
#从epc寄存器指定地址处开始执行(内核入口地址),将参数传递给程序(内核)。
#硬盘第一分区引导系统启动,启动过程中的信息打印到显示器和CPU UART0。
9、ifaddr--配置网卡
命令格式:
ifaddr <interface> <ipaddr> Configure Network Interface
<interface> Interface name
<ipaddr> IP Address
使用如下:
PMON> ifaddr eth0 192.168.1.110
#配置网口eth0 IP地址为:eth0 192.168.1.110
10、ifconfig--配置网卡
命令格式:
ifconfig ifname ifconfig fx0
[up|down|remove|stat|setmac|readrom|setrom|addr [netmask]
使用ifconfig 设置IP地址:
PMON> ifconfig eth1 192.168.120
==arp_ifinit done
使用ifconfig up/down网口:
PMON> ifconfig eth1 up
使用ifconfig 查看网口配置:
PMON> ifconfig eth0
ip:192.168.1.110
netmask:255.255.255.0
broadcast:255.255.255.0
status:up running
11、ping--测试网络链接
命令格式:
ping [-fqrv] [-c cnt] [-s sz] host ping remote host
使用如下:
PMON> ping 192.168.1.112
#192.168.1.112 为上位机IP
12、setmac--设置MAC地址
命令格式:
setmac set the Mac address of syn0 and syn1
使用如下:
PMON> setmac eth1 00:12:13:14:34:55
#设置网口eth1的MAC地址,机器重启之后生效。 通过setmac eth1查看是否配置成功。
13、set/unset--设置环境变量
命令格式:
set [[-t] name [value]] display/set variable
查看目前设置的环境变量:
PMON> set
installdelay = 5
autoinstall = /dev/fs/ext2@usb0/vmlinuxboot
FR = 1
al = /dev/fs/iso9600@cd0/boot/vmlinux
al1 = /dev/fs/ext2@wd0/boot/vmlinux
append = "console=tty root=/dev/sda1"
......
设置环境变量:
PMON> set ifconfig "eth0:192.168.1.113"
......
ifconfig = eth0:192.168.1.113
取消环境变量:
PMON> unset ifconfig
14、d1/d2/d4/d8--按照字节读内存或寄存器
命令格式:
d1 [addr] [count] dump address byte
d2 [addr] [count] dump address half world
d4 [addr] [count] dump address world
d8 [addr] [count] dump address double word
使用如下:
PMON> d1 0xbfe001e0 0x4
ffffffffbfe001e0: 1b 00 c1 03
PMON> d2 0xbfe001e0 0x2
ffffffffbfe001e0: 0043 00c1
PMON> d4 0xbfe001e0 0x1
ffffffffbfe001e0: 0000005b
PMON> d8 0xbfe001e0 0x1
ffffffffbfe001e0: 000000000000001b
15、m1/m2/m4/m8--按照字节写内存或寄存器
命令格式:
m1 addr [data] modify address byte
m2 addr [data] modify address half world
m4 addr [data] modify address world
m8 addr [data] modify address double word
使用如下:
PMON> m1 0xbfe001e8 0x41
PMON> m2 0xbfe001e8 0x41
PMON> m4 0xbfe001e8 0x41
PMON> m8 0xbfe001e8 0x41
16、pciscan--查看PCI设备及空间分配
命令格式:
pciscan [-b <bus>][-d <dev>] scan pci bus
-b <bus> bus no
-d <dev> dev no
使用如下:
PMON> pciscan
>> BUS 0 <<
Dev Fun Device description
--------------------------
0 0 vendor/product: 0x6305/0x0003 (bridge, PCI)
0x00000000:0xffffffff mem @0x00000000, 16 bytes
0x00000000:0xffffffff mem @0x00000000, 16 bytes
0x00070100:0x00ffffff mem @0x00070100, 16 bytes
0x00000000:0x0000f1f1 mem @0x00000000, 16 bytes
0x10001000:0xfff0fff0 mem @0x10001000, 16 bytes
0x00000010:0xfff1fff1 mem @0x00000010, 16 bytes
......
17、pcs--设置空间读写方式
命令格式:
pcs bus dev func select pci dev function
使用如下:
PMON> pcs 0 3 0
#选择bus 0 dev 3 function 0 的pci设备
PMON> d4 0x0 0x10
00000000: 7a030014 00000047 02000000 00800000 ...zG...........
00000010: 49198004 00000000 00000000 00000000 ...I............
00000020: 00000000 00000000 00000000 00000000 ................
00000030: 00000000 00000000 00000000 0000014c ............L...
切换不同的空间访问说明:
PMON> pcs
pcs 0 : select select normal memory access 32 bit cpu address
pcs -1 : select select normal memory access 64 bit uncached phyiscal address
pcs -2 : select select normal memory access 64 bit cached phyiscal address
pcs -3 : select select normal memory access 64 bit cpu address
pcs bus dev func : select pci configuration space access with bus dev func
#pcs 0 选择32位CPU地址访问
#pcs -1 选择64位uncache 物理地址访问
#pcs -2 选择64位cache物理地址访问
#pcs -3 选择64位CPU地址访问
注意:桥片映射空间只能用pcs 0/1正常访问。
具体操作如下:
18、loop--循环执行
命令格式:
loop count cmd... loopcmd count cmd...
使用如下:
PMON> loop 5 date
NO 1
Wed Mar 10 11:58:09 2021
NO 2
Wed Mar 10 11:58:09 2021
NO 3
Wed Mar 10 11:58:09 2021
NO 4
Wed Mar 10 11:58:09 2021
NO 5
Wed Mar 10 11:58:09 2021
19、hi--查看历史命令
命令格式:
hi [cnt] display command history
使用如下:
PMON> hi
75 hi
74 h hi
73 devls
#显示pmon启动以来最后使用的100个命令
20、reboot/poweroff--软重启/关机
命令格式:
reboot reboot system
poweroff poweroff system
使用如下:
PMON> reboot
PMON> poweroff