Google se compromete a promover la equidad racial para las comunidades negras. Ver cómo.
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Superposiciones de árbol de dispositivos

Un árbol de dispositivos (DT) es una estructura de datos de nodos con nombre y propiedades que describen hardware no detectable. Los sistemas operativos, como el kernel de Linux utilizado en Android, utilizan DT para admitir una amplia gama de configuraciones de hardware utilizadas por dispositivos con Android. Los proveedores de hardware suministran sus propios archivos fuente DT, que luego Linux compila en el archivo Blob de árbol de dispositivos (DTB) utilizado por el gestor de arranque.

Una superposición de árbol de dispositivos (DTO) permite superponer un blob de árbol de dispositivo central (DTB) en el árbol de dispositivos. Un gestor de arranque que usa DTO puede mantener el DT del sistema en chip (SoC) y superponer dinámicamente un DT específico del dispositivo, agregar nodos al árbol y realizar cambios en las propiedades del árbol existente.

Esta página detalla un flujo de trabajo típico del gestor de arranque para cargar un DT y proporciona una lista de términos comunes de DT. Otras páginas en esta sección describen cómo implementar el soporte del cargador de arranque para DTO , cómo compilar , verificar y optimizar su implementación de DTO , y cómo usar múltiples DT . También puede obtener detalles sobre la sintaxis DTO y el formato de partición DTO / DTBO requerido.

Actualizaciones en la versión de Android 9

En Android 9, el gestor de arranque no debe modificar las propiedades definidas en las superposiciones del árbol de dispositivos antes de pasar el blob de árbol de dispositivo unificado al núcleo.

Cargando un árbol de dispositivos

Cargar un árbol de dispositivos en el gestor de arranque implica construir, particionar y ejecutar.

Figura 1. Implementación típica para cargar el árbol de dispositivos en el gestor de arranque.
  1. Para construir:
    • Use el compilador del árbol de dispositivos ( dtc ) para compilar la fuente del árbol de dispositivos ( .dts ) en un blob de árbol de dispositivos ( .dtb ), formateado como un árbol de dispositivos aplanado.
    • .dtb archivo .dtb en una ubicación accesible para el tiempo de ejecución del cargador de arranque (que se detalla a continuación).
  2. Para particionar, determine una ubicación confiable y accesible en tiempo de ejecución del cargador de arranque en la memoria flash para colocar .dtb . Ubicaciones de ejemplo:
    Partición de arranque
    Figura 2. Ponga .dtb en la partición de arranque agregando a image.gz y pasando como " kernel " a mkbootimg .
    Partición única
    Figura 3. Coloque .dtb en una partición única (por ejemplo, partición dtb ).
  3. Correr:
    • Cargue .dtb desde el almacenamiento a la memoria.
    • Inicie el núcleo dada la dirección de memoria del DT cargado.

Terminología

Esta sección utiliza los siguientes términos del árbol de dispositivos:

DT Árbol de dispositivos
DTB Device Tree Blob
DTBO Blob de árbol de dispositivos para superposición
DTC Compilador de árbol de dispositivos
DTO Dispositivo de superposición de árbol
DTS Fuente del árbol de dispositivos
FDT Árbol de dispositivo aplanado, un formato binario contenido en un archivo de blob .dtb