Configuración del device tree en RK3588
Última actualización: 2024-03-13
La siguiente guía o receta requiere acceso a la shell de tu instalación de FydeOS, por lo tanto se asume que el modo desarrollador está habilitado. Si es necesario modificar archivos del sistema, también tendrás que desactivar la verificación del sistema de archivos raíz.
Introducción
El SOC RK3588 admite la carga, durante el inicio, tanto de los archivos integrados de device tree overlay de FydeOS como de archivos dtbo definidos por el usuario.
Importancia de cargar device tree overlays
La carga de device tree overlays mejora principalmente la flexibilidad de la configuración del hardware, reduce los costes de mantenimiento del sistema y facilita la personalización de las configuraciones de hardware por parte del usuario. También simplifica la solución de problemas y la depuración.
Al aprovechar los device tree overlays, los usuarios pueden configurar el hardware para que se adapte a sus necesidades sin modificar el código del kernel. Este enfoque también simplifica el proceso de identificar y resolver posibles problemas. Por ejemplo, los usuarios pueden habilitar o deshabilitar periféricos específicos, como ventiladores PWM o dispositivos I2C, según los requisitos de su proyecto.
Requisitos previos
Para continuar, debes entender los conceptos básicos de los device tree overlays y las operaciones básicas de línea de comandos de Linux.
Procedimiento paso a paso
Paso 1: Inicia sesión en tu cuenta de FydeOS y entra en el escritorio
Paso 2: Entra en el entorno de shell Bash
Para personalizar la carga de device tree overlays, inicia sesión en cualquier cuenta de FydeOS y entra en el escritorio. Accede a los privilegios de administrador navegando por crosh (Control + Alt + T) o tty y escribiendo sudo su.
Nota: a partir de FydeOS v17 y openFyde r114,
sudo sudejará de funcionar. Usasudo -ien su lugar. Este cambio no afecta a las versiones anteriores.
Paso 3: Ver los device tree overlays integrados
Los device tree overlays integrados se encuentran en el directorio /boot/rockchip/overlay/. Después de introducir el comando ls /boot/rockchip/overlay/*dtbo, verás la lista de archivos, como se muestra a continuación (usando rock5b-fydeos como ejemplo):
localhost ~ # ls /boot/rockchip/overlay/pwm-fan.dtbo rk3588-i2c8-m4.dtbo rk3588-pwm15-m0.dtbo rk3588-pwm6-m2.dtbo rk3588-spi1-m1-cs1-spidev.dtbo rk3588-uart7-m1.dtbo rock-5b-hdmi2-8k.dtbork3588-add-hdptxphy_hdmi_clk.dtbo rk3588-pwm12-m0.dtbo rk3588-pwm15-m1.dtbo rk3588-pwm7-m3.dtbo rk3588-uart2-m0.dtbo rk3588-uart7-m2.dtbo rock-5b-radxa-display-10fhd.dtbork3588-i2c0-m1.dtbo rk3588-pwm13-m0.dtbo rk3588-pwm15-m3.dtbo rk3588-pwm8-m0.dtbo rk3588-uart2-m2.dtbo rk3588-unlock-opps.dtbo rock-5b-sata.dtbork3588-i2c1-m0.dtbo rk3588-pwm13-m2.dtbo rk3588-pwm2-m1.dtbo rk3588-spi0-m2-cs0-spidev.dtbo rk3588-uart3-m1.dtbo rock-5a-radxa-display-10fhd.dtbork3588-i2c3-m1.dtbo rk3588-pwm14-m0.dtbo rk3588-pwm3-m1.dtbo rk3588-spi0-m2-cs1-spidev.dtbo rk3588-uart4-m2.dtbo rock-5ab-camera-imx415.dtbork3588-i2c7-m3.dtbo rk3588-pwm14-m1.dtbo rk3588-pwm5-m2.dtbo rk3588-spi1-m1-cs0-spidev.dtbo rk3588-uart7-m1-ctsn-rtsn.dtbo rock-5b-hdmi1-8k.dtboPaso 4: Cargar los device tree overlays integrados
FydeOS para la serie SOC RK3588, igual que uEnv.txt de Armbian, admite Env.txt, ubicado en /mnt/stateful_partition/fyde/Env.txt. Para quienes lo usan por primera vez, puede que necesites crear manualmente el directorio /mnt/stateful_partition/fyde/ y el archivo /mnt/stateful_partition/fyde/Env.txt. Aquí tienes un ejemplo usando el overlay de control de ventilador pwm-fan de rock5b:
-
Para el primer uso, crea la carpeta fyde
Ventana de terminal mkdir -p /mnt/stateful_partition/fyde/ -
Usa nano/vim para editar el archivo
Env.txt, añade el nombre del archivo dtbo aoverlays=, separa varios overlays con un espacioVentana de terminal overlays=pwm-fan -
Guarda los cambios
Paso 5: Reiniciar el sistema
Después de realizar los cambios, reinicia el sistema para aplicarlos.
Paso 6: Añadir archivos personalizados de device tree overlays
FydeOS requiere que los device tree overlays definidos por el usuario, o archivos .dtbo, se coloquen en la carpeta /mnt/stateful_partition/fyde/user_overlay/. Si es tu primera vez y la carpeta no existe, créala. Luego, copia los archivos .dtbo relevantes a esta carpeta.
Paso 7: Cargar archivos personalizados de device tree overlays
Cargar device tree overlays personalizados es similar a cargar los integrados. Debes modificar el archivo /mnt/stateful_partition/fyde/Env.txt.
Usa nano/vim para editar el archivo Env.txt, añade el nombre del archivo dtbo a user_overlays=, separa varios overlays con un espacio
user_overlays=foo barPaso 8: Reiniciar el sistema
Reinicia el sistema para aplicar los cambios.
Solución de problemas
- Los
overlaysouser_overlaysdefinidos para cargar el overlay no funcionan.
Comprueba que el uso de mayúsculas y minúsculas en el archivo
Env.txtsea correcto y separa varios overlays con un espacio en blanco en inglés. Para los overlays personalizados, asegúrate de que los archivos dtbo en/mnt/stateful_partition/fyde/overlaysean válidos.
- ¿Por qué cambiar
overlaysouser_overlayshizo que el sistema no arrancara?
Antes de hacer cambios, asegúrate de que el overlay que vas a cargar haya sido verificado; de lo contrario, puede hacer que el sistema no arranque. Si esto ocurre, puedes deshacer los cambios montando manualmente el archivo /fyde/Env.txt correspondiente a la primera partición del disco del sistema.