linux kernel - ¿Cómo compilar archivos de origen del árbol de dispositivos dts de Linux a dtb?
linux-kernel cross-compiling (3)
Los árboles de dispositivos no necesitan compilarse con herramientas "conscientes de la arquitectura". El compilador dtc en su máquina ubuntu es probablemente lo suficientemente actual para compilar su árbol de dispositivos. O puede descargar la última fuente y compilarla usted mismo. El compilador dtc se puede encontrar aquí:
https://git.kernel.org/pub/scm/utils/dtc/dtc.git
Hay algunos documentos buenos en ese paquete que lo ayudarán a comprender mejor los árboles de dispositivos en general.
Es bastante fácil compilar (y desmontar) árboles de dispositivos. Por ejemplo
$ dtc -O dtb -o p4080ds.dtb p4080ds.dts
Para obtener el árbol de dispositivos en texto desde el blob de árbol de dispositivos, haga lo siguiente:
$ dtc -I dtb -O dts p4080ds.dtb
¡Espero que esto ayude!
Tengo un archivo de árbol de dispositivos (.dts) y quiero compilar el archivo para mi placa basada en powerpc.
¿Cómo puedo hacerlo en mi máquina, que no está basada en powerpc? ¿Puedo hacerlo con el DTC instalado en mi sistema Ubuntu? ¿O será más como usar un compilador separado y pasar información ARCH (como usar una cadena de herramientas)?
make dtbs
desde el árbol del kernel es otra forma común de compilarlos, ya que el lugar estándar para poner dts está debajo del árbol del kernel en los directorios del formulario ./arch/<arch>/boot/dts
.
Esto termina llamando a dtc
, pero podría funcionar mejor porque los posibles incluidos estarán en el lugar correcto.
Los dtbs se colocan en el mismo directorio que los dts.
dtc
se puede instalar con este comando en linux:sudo apt-get install device-tree-compiler
puede compilar archivos
dts
odtsi
con este comando:dtc -I dts -O dtb -o devicetree_file_name.dtb devicetree_file_name.dts
puede convertir
dts
adtb
con este comando:dtc -I dts -O dtb -f devicetree_file_name.dts -o devicetree_file_name.dtb
puede convertir
dtb
adts
con este comando:dtc -I dtb -O dts -f devicetree_file_name.dtb -o devicetree_file_name.dts