Portabilidad del sistema IMX6ULL: comandos básicos de uboot

1. arranque de arranque

Cuando el dispositivo se enciende y se inicia, debe presionar la tecla Intro de inmediato, y el inicio de la placa de desarrollo se detendrá en el momento de la información de registro de inicio de uboot.

Este es el modo de comando de uboot, es decir, puede ingresar comandos de uboot para realizar algunas operaciones.

2. Comandos básicos de uboot

1. comando de ayuda

Cuando la placa de desarrollo esté encendida, presione la tecla Intro inmediatamente para ingresar al modo de comando uboot, ingrese el comando de ayuda o ingrese el signo de interrogación "?" para ver todos los comandos admitidos por uboot en la placa de desarrollo.

De la siguiente manera (a continuación solo se muestra una parte de los comandos):

=> help
?       - alias for 'help'
base    - print or set address offset
bdinfo  - print Board Info structure
bmode   - sd1|sd2|qspi1|normal|usb|sata|ecspi1:0|ecspi1:1|ecspi1:2|ecspi1:3|esdhc1|esdhc2|esdhc3|esdhc4 [noreset]
boot    - boot default, i.e., run 'bootcmd'
bootd   - boot default, i.e., run 'bootcmd'
bootelf - Boot from an ELF image in memory
bootm   - boot application image from memory

Si necesita ver la información de ayuda para un determinado comando: ? + nombre de comando

Por ejemplo, para ver la información de ayuda del comando echo , puede ingresar: ?eco

=> ? echo
echo - echo args to console

Usage:
echo [args..]
    - echo args to console; \c suppresses newline
=> 

 

2. Comando de consulta de información

Comando printenv: vea el comando de variable de entorno actual de la placa de desarrollo

Comando bdinfo: ver el comando de información de uboot

Imprima todos los valores de las variables de entorno de la siguiente manera:

=> printenv
author=wangtian
baudrate=115200
board_name=EVK
board_rev=14X14
bootargs=console=ttymxc0,115200 ubi.mtd=5 root=ubi0:rootfs rootfstype=ubifs mtdparts=gpmi-nand:4m(u-boot),128k(env),1m(logo),1m(dtb),8m(kernel),-(rootfs)
bootcmd=nand read ${loadaddr} 0x620000 0x800000;nand read ${fdt_addr} ${fdt_offset} 0x20000;bootz ${loadaddr} - ${fdt_addr}
bootcmd_mfg=run mfgtool_args;bootz ${loadaddr} ${initrd_addr} ${fdt_addr};
bootdelay=3

 3. Comandos relacionados con variables de entorno

 

Comando setenv: Establece todas las variables de entorno. También puede personalizar las variables de entorno. Las variables de entorno también se pueden eliminar.

Comando saveenv: Guarde las variables de entorno de la placa de desarrollo, es decir, guarde todos los valores de las variables de entorno en Nand-Flash o EMMC.

Por ejemplo, el uso del comando saveenv :

Cuando la placa de desarrollo permanece en el momento de inicio de uboot, se imprime la siguiente información:

 

 La información impresa anterior significa: No guardamos las variables de entorno predeterminadas en la placa de desarrollo, por lo que usamos las variables de entorno predeterminadas.

En este punto, ingrese el comando saveenv para guardar el valor de la variable de entorno predeterminada de uboot en Nand-Flash (o EMMC) de la placa de desarrollo. Después de ejecutar el comando saveenv, la información de advertencia anterior no se imprimirá después de reiniciar el dispositivo.

Haz lo siguiente:

 Uso del comando setenv :

Por ejemplo, aquí queremos cambiar el valor de bootdelay.Podemos saber a través del comando printenv que el valor de bootdelay ahora es 1, es decir, el kernel de Linux se inicia después de un retraso de 1 segundo después de que se inicia uboot.

Aquí quiero cambiar el valor de bootdelay a 3. Introduzca el comando de la siguiente manera:

setenv bootdelay 3  //这里只是在代码更改了 bootdelay的值,并没有保存到Nand-Flash中

También debe guardar el bootdelay modificado , ingrese el comando de la siguiente manera:

saveenv  //将更改的 bootdelay的值保存到 Nand_flash中

El funcionamiento es el siguiente:

=> setenv bootdelay 3
=> saveenv
Saving Environment to NAND...
Erasing NAND...
Erasing at 0x400000 -- 100% complete.
Writing to NAND... OK

En este momento, el valor de bootdelay se ha guardado en Nand-Flash y puede usar el comando printenv para verlo. También puede volver a encender la placa de desarrollo y verificar si se produce la cuenta regresiva de 3 segundos después de que se inicie uboot.

4. Crear nuevas variables de entorno/eliminar variables de entorno

(1) Variables de entorno personalizadas

Se define una variable de entorno personalizada para agregar una nueva variable de entorno.

El funcionamiento es el siguiente:

=> setenv author wangtian 
=> saveenv
Saving Environment to NAND...
Erasing NAND...
Erasing at 0x400000 -- 100% complete.
Writing to NAND... OK

Luego use el comando printenv para verificar si se ha creado correctamente. como sigue:

=> printenv
author=wangtian

(2) Eliminar la variable de entorno

El comando setenv puede eliminar variables de entorno.

Establecer el valor de una variable de entorno en un valor nulo elimina la variable de entorno.

=> setenv author
=> saveenv
Saving Environment to NAND...
Erasing NAND...
Erasing at 0x400000 -- 100% complete.
Writing to NAND... OK

Luego use el comando printenv para verificar que la variable de entorno autor haya sido eliminada.

Como sigue:

=> printenv
baudrate=115200
board_name=EVK
board_rev=14X14
bootargs=console=ttymxc0,115200 ubi.mtd=5 root=ubi0:rootfs rootfstype=ubifs 

Supongo que te gusta

Origin blog.csdn.net/wojiaxiaohuang2014/article/details/131503747
Recomendado
Clasificación