Post Top Ad

Your Ad Spot

martes, 25 de agosto de 2020

Open Source U-Boot Bootloader Now Supports SquashFS Filesystem

El cargador de arranque U-Boot de código abierto ahora es compatible con el sistema de archivos SquashFS
SquashFS es uno de los sistemas de archivos comprimidos de solo lectura más populares para el sistema operativo Linux. Se usa ampliamente en sistemas integrados para comprimir sistemas de archivos, inodos y directorios completos.
En 2009, el soporte para SquashFS se fusionó con el kernel principal como parte de Linux 2.6.9. Pero hasta ahora, el cargador de arranque universal de código abierto (U-Boot) no era compatible con SquashFS, lo que provocaba la imposibilidad de cargar imágenes del kernel o Blobs del árbol de dispositivos desde un sistema de archivos SquashFS en U-Boot.

Soporte de SquashFS para U-Boot

Ahora, el soporte de SquashFS finalmente se agregó a U-Boot gracias a una contribución de João Marcos Costa, un pasante que trabaja en la empresa Bootlin. El soporte para SquashFS ahora está disponible en upstream U-Boot, que puede encontrar en fs / squashfs / en el código fuente de U-Boot.
Soporte del sistema de archivos SquashFS para U-Boot
Soporte del sistema de archivos SquashFS para U-Boot
Más específicamente, la contribución incluye un nuevo controlador de sistema de archivos SquashFS, comandos, soporte para la descompresión zlib en el controlador y scripts para probar sus comandos.
Para usar el sistema de archivos SquashFS, primero debe habilitar su soporte, que a cambio agrega el controlador SquashFS y proporciona comandos SquashFS U-Boot.
El comando incluye sqfslslistar archivos de un sistema de archivos raíz típico de Linux.
=> sqfsls mmc 0:1
            bin/
            boot/
            dev/
            etc/
            lib/
    <SYM>   lib32
    <SYM>   linuxrc
            media/
            mnt/
            opt/
            proc/
            root/
            run/
            sbin/
            sys/
            tmp/
            usr/
            var/
 
2 file(s), 16 dir(s)
sqfsloadpara cargar imágenes del kernel de Linux y blobs del árbol de dispositivos desde archivos.
=> sqfsload mmc 0:1 $kernel_addr_r /boot/zImage
6160384 bytes read in 433 ms (13.6 MiB/s)
=> sqfsload mmc 0:1 0x81000000 /boot/am335x-boneblack.dtb
40817 bytes read in 11 ms (3.5 MiB/s)
=> setenv bootargs console=ttyO0,115200n8
=> bootz $kernel_addr_r - 0x81000000
## Flattened Device Tree blob at 81000000
   Booting using the fdt blob at 0x81000000
   Loading Device Tree to 8fff3000, end 8fffff70 ... OK
 
Starting kernel ...
 
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.19.79 (joaomcosta@joaomcosta-Latitude-E7470) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05)) #1 SMP Fri May 29 18:26:39 CEST 2020
[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
Dado que el código del controlador SquashFS es nuevo, es posible que también encuentre algunos errores o limitaciones, que puede informar para resolverlos lo antes posible.
Además de las contribuciones de SquashFS, João también ha enviado código para agregar soporte para la descompresión LZO y ZSTD.

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas