Orden de comandos de uso común de LoongSon-PMON

Inicie los comandos relacionados con el kernel a través de pmon

 

Carga de red:

  cargar tftp: // servidor-ip / vmlinux

  initrd tftp: //server‐ip/initrd.gz

  g consola = tty consola = ttyS0,115200

 

Arranque desde u disco:

  cargar (usb0,0) / vmlinux

  initrd (usb0,0) /initrd.gz

  g consola = tty consola = ttyS0,115200

 

Explicación del comando:

Comando: cargar

Formato: cargar <autoarchivo>

Explicación: El comando de carga es un comando muy importante en PMON. La función es cargar un archivo elf en la memoria (aquí solo se almacena en la memoria, pero no se graba en la memoria flash). El proceso de carga es un proceso general de procesamiento automático de la redirección de archivos elf y otras operaciones basadas en la información de el archivo elf, por lo que no es necesario especificar la dirección de memoria para cargar, el comando de carga se completará automáticamente.

如: cargar tftp: // servidor ‐ ip / vmlinux

El comando anterior es cargar el kernel desde el servidor tftp de red en la memoria.

Tales como: load / dev / mtd0b

El comando anterior es cargar un archivo elf desde el principio de la primera partición de nandflash en la memoria, donde generalmente se almacena el kernel, que es otra forma de cargar el kernel.

Nota: El vmlinux aquí es un archivo elf. Si el archivo cargado especificado no es un archivo elf, se mostrará un error.

 

Comando: initrd

Formato: initrd <archivo img>

Explicación: cargar imagen initrd

 

Comando: g

Formato: g [‐s] [- b bpaddr] [- e dirección] [‐‐ args]

Explicación: El comando g es un comando muy importante en PMON, que ejecuta directamente el programa desde la dirección de memoria especificada

Tales como: g -e addr

Como en el comando anterior, el programa se ejecuta directamente desde la dirección de memoria addr. La premisa del funcionamiento normal es que un programa ejecutable se haya almacenado en la memoria al comienzo de addr. Addr es la dirección de entrada de este programa. Por ejemplo , sabemos que la dirección de memoria 0x80010000 es el código pmon. Almacene la dirección de inicio del segmento, ejecute g -e 0x80010000 volverá a ejecutar el código pmon, que es equivalente a reiniciar el PMON (el pmon no se copiará del parpadea en este momento)

cargar tftp: // servidor-ip / vmlinux

g consola = ttyS0,115200 rdinit = / sbin / init

El comando anterior se usa junto con el comando de carga. Una vez completada la carga, use el comando g para ejecutar automáticamente el kernel desde la dirección de entrada del kernel cargada. Este es el parámetro "console = ttyS0,115200 rdinit = / sbin / init "son los parámetros de inicio del kernel.

 

Variables de entorno relacionadas con el inicio

Las variables de entorno relacionadas con el inicio son al1, rd, append, que corresponden al kernel, la ruta initrd y los parámetros de inicio, por ejemplo

Puede configurarse para:

establecer al1 / dev / mtd0

establecer rd /dev/fs/yaffs2@mtd1/initrd.gz

establecer adjuntar consola = tty consola = ttyS0,115200

Explicación del comando:

Comando: establecer

Formato: establecer [nombre] [valor]

Explicación: Verifique las variables de entorno en pmon y establezca el nombre de la variable de entorno en valor

Tales como: set (ver y mostrar todas las variables de entorno en pmon);

      establecer wk kkk (agregar o modificar el valor del entorno wk a kkk)

 

pmon flash kernel y sistema de archivos al método nand

Debe borrarse antes de programar, el comando es el siguiente:

mtd_erase / dev / mtd0r // 0 significa partición, el sufijo r significa borrar sin saltarse mal rápidamente

mtd_erase / dev / mtd1r

devcp tftp: // servidor ‐ ip / vmlinux / dev / mtd0

devcp tftp: //server‐ip/roofs‐yaffs2.img / dev / mtd1y

establecer al1 / dev / mtd0

establecer agregar consola = ttyS0,115200 rdinit = / sbin / init root = / dev / mtdblock1 rw

rootfs = yaffs2

Explicación del comando:

Comando: devcp

格式: devcp <src‐dispositivo> <desc‐dispositivo>

Explicación: El comando devcp debería ser un comando importante en PMON.

La implementación es: abra los dos dispositivos src-device y desc-device, lea una cierta cantidad de datos de bytes de src-device, escríbalos en el dispositivo desc-device y cierre estos dos dispositivos después de la finalización.

如: devcp tftp: // servidor ‐ ip / vmlinux / dev / mtd0

El comando anterior es para recibir y leer el kernel vmlinux desde el servidor tftp y escribirlo en la primera partición de nandflash Este es un comando comúnmente usado para programar el kernel para flash.

如: devcp tftp: //server‐ip/roofs‐yaffs2.img / dev / mtd1y

El comando anterior es para recibir y leer el archivo de imagen yaffs2 rootfs-yaffs2.img del sistema de archivos raíz desde el servidor tftp

Flash a la segunda partición de nandflash. Este es un comando de uso común para actualizar el sistema de archivos yaffs2 a nandflash.

 

Comando: mtdparts

Formato: mtdparts

Explicación: muestra la información de la partición actual de nandflash.

 

Comando: mtd_erase

Formato: mtd_erase <mtd-device>

Explicación: Limpiar una partición de nandflash

(Borre la primera partición de nandflash, omita los lugares que ya son bloques defectuosos y no intentará borrar los lugares que ya son bloques defectuosos);

borrado_mtd / dev / mtd0r

(Borre la primera partición de nandflash. En este momento, intentará borrar todos los bloques, incluso si es un bloque malo, intentará borrarlo.

Excepto operación).

 

Ver y modificar dtb bajo pmon

La línea de comandos de Pmon admite, visualiza, elimina y vuelve a grabar dtb.

Vea el comando dtb en Pmon:

Print_dtb / Imprime todo el contenido de dtb

Print_dtb / soc / dc @ 0x400c0000 imprime todo el contenido de dc

 

Eliminar dtb en Pmon

rm_dtb_node / eliminar todo el dtb

rm_dtb_node / soc / hda @ 0x400d00000 eliminar tenía contenido

 

Reprogramar dtb bajo pmon

dtb pasará la información del tamaño de la memoria al kernel. Si esta parte del contenido se pasa incorrectamente, causará errores impredecibles. Si vuelve a escribir el contenido interno, debe leer el contenido de la memoria a través del comando print_dtb y actualizarlo al nuevo archivo dts (el tercer procesador no transmite información de la memoria).

La ejecución de make dtb en el directorio de compilación de pmon generará el archivo Bonito3a3000_7a.dtb. Este archivo se puede grabar por separado.  

Programación de comandos y programación consistente con pmon

 

Introducción a otros comandos 

Comando: d1

Formato: d1 <addr> <num>

Explicación: abreviatura de visualización

Presione unsigned char para acceder y mostrar los valores numéricos de contenido comenzando por la dirección addr.

Tales como: d1 0x85000000 0x10

Muestra 0x10 bytes (8 bits) desde la dirección de memoria 0x85000000, 0x85000000-0x8500000f

 

Comando: d2

Formato: d2 <addr> <num>

Explicación: abreviatura de visualización

Presione (unsigned short) para acceder y mostrar los valores de contenido numérico comenzando por la dirección addr.   

Tales como: d2 0x85000000 0x10

Muestra 0x10 valores de tipo corto sin firmar (16 bits) de la dirección de memoria 0x85000000, 0x85000000-0x8500001e

 

Comando: d4

Formato: d4 <addr> <num>

Explicación: abreviatura de visualización

Presione (unsigned long) para acceder y mostrar los valores numéricos de contenido comenzando por la dirección addr.

Tales como: d4 0x85000000 0x10

Muestra 0x10 valores largos sin firmar (32 bits) de la dirección de memoria 0x85000000, 0x85000000-0x8500003c

 

Comando: d8

Formato: d8 <addr> <num>

Explicación: abreviatura de visualización

Presione (unsigned long long) para acceder y mostrar los valores de contenido numérico comenzando por la dirección addr.

Tales como: d8 0x85000000 0x10

Muestra 0x10 valores largos sin firmar (64 bits) de la dirección de memoria 0x85000000, 0x85000000-0x85000078

 

Comando: m1

格式: m1 <addr> <valor>

Explicación: modificar taquigrafía

Presione carácter sin firmar para acceder y modificar el valor del contenido de la dirección addr.

Tales como: m1 0x85000000 0x10

La modificación de un valor de carácter sin firmar en la dirección de memoria 0x85000000 es equivalente a: * (carácter sin signo *) addr = value;

 

Comando: m2

Formato: m2 <addr> <valor>

Explicación: modificar taquigrafía

Presione unsigned short para acceder y modificar el valor del contenido de la dirección addr.   

Tales como: m2 0x85000000 0x10

La modificación de un valor corto sin signo en la dirección de memoria 0x85000000 es equivalente a: * (corto sin signo *) addr = valor;

 

Comando: m4

Formato: m4 <addr> <valor>

Explicación: modificar taquigrafía

Presione unsigned long para acceder y modificar el valor de contenido de address addr.

Tales como: m4 0x85000000 0x10

La modificación de un valor largo sin signo en la dirección de memoria 0x85000000 es equivalente a: * (largo sin signo *) addr = valor;

 

Comando: m8

格式: m8 <addr> <valor>

Explicación: modificar taquigrafía

Acceda y modifique el valor del contenido de la dirección addr de acuerdo con unsigned long long.

Tales como: m8 0x85000000 0x10

Modificar un valor largo sin signo en la dirección de memoria 0x85000000 es equivalente a: * (largo largo sin signo *) addr = valor;

 

Comando: devls

Formato: devls

Explicación: Verifique algunos dispositivos de pmon, los dispositivos que se muestran aquí no son todos los dispositivos.

Generalmente, existen tarjetas de red, USB, tarjetas CF, tarjetas sd, discos duros, etc., que se utilizan principalmente para ver el nombre del dispositivo para otras operaciones.

 

Comando: ifaddr

格式: ifaddr <interfaz> <ipaddr>

Explicación: Configure la dirección IP de la tarjeta de red, como: ifaddr syn0 192.168.0.1 (syn0 es el nombre de la tarjeta de red, puede usar el comando devls para verla, no es necesario configurar la máscara de subred aquí, pmon establecerá automáticamente la máscara de subred en 255.255.255.0)

 

Comando: ping

Formato: ping <ipaddr>

Explicación: Detección simple, como: ifconfig syn0 (syn0 es el nombre de la tarjeta de red, puede usar el comando devls para verla)

 

Comando: desarmado

Formato: desarmado <nombre>

Explicación: Elimine la variable de entorno denominada nombre. Para obtener una explicación de las variables de entorno, consulte el apéndice de las variables de entorno de PMON

Supongo que te gusta

Origin blog.csdn.net/qq543716996/article/details/104768764
Recomendado
Clasificación