Como llegar UBoot trabajar con un squashfs / ¿Qué es la FDT en UBoot?
-
22-09-2019 - |
Pregunta
Me puse en marcha la cadena de herramientas Kamikaze (de OpenWRT ), y compilado Linux kernel 2.6.30.x para un href="http://www.appliedmicro.com/MyAMCC/jsp/public/productDetail/product_detail.jsp?productID=PPC405EX" rel="nofollow noreferrer"> AMCC PPC405ex Kilauea tablero de referencia . Sin embargo, por alguna razón que estoy haciendo algo mal en UBoot, ya que no soy capaz de ejecutar el núcleo de una imagen squashfs. La multa imagen se carga sobre TFTP y descomprime, pero la salida de la consola no se inicia.
No he cambiado la línea de comandos del kernel de Linux y se ve bien sólo (console=ttyS0,115200 root=/dev/mtdblock
). También estoy un poco desconcertado lo que es FDT en UBoot?
No estoy del todo seguro de si esto realmente pertenece en stackoverflow, pero de nuevo esto no es realmente una pregunta superuser.com bien (y debido a esto tiene que ver con un entorno de desarrollo que sin duda es programación relacionada , a pesar de que no es exactamente una cuestión de programación)
Solución
Yo era capaz de resolver esto por mí mismo, soy no se supone que utilizar el openwrt-boardname-squashfs.img
pero instaed debo usar la imagen openwrt-architecture-uImage
, que contiene sólo el núcleo, tomar la root.squashfs
y openwrt-boardname.dtb
del build_dir
ya que no se copian en el directorio bin/
.
Después de eso, estos comandos se abre la junta correctamente:
tftp 0xfc1e0000 openwrt-kilauea.dtb
tftp 0x400000 openwrt-ppc40x-uImage
tftp 0x200000 root.squashfs
setenv bootargs 'console=ttyS0,115200 root=/dev/mtdblock2 rw'
bootm 0x400000 - 0xfc1e0000
probablemente hay una manera más fácil, pero no he encontrado la forma de 'reparto' del MTD para no tener que cargar inicialmente la imagen del núcleo al espacio user
en la memoria.