Google si impegna a promuovere l'equità razziale per le comunità nere. Vedi come.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Sovrapposizioni dell'albero dei dispositivi

Un albero dei dispositivi (DT) è una struttura di dati di nodi e proprietà denominati che descrivono l'hardware non rilevabile. I sistemi operativi, come il kernel Linux utilizzato in Android, utilizzano i DT per supportare un'ampia gamma di configurazioni hardware utilizzate dai dispositivi basati su Android. I fornitori di hardware forniscono i propri file sorgente DT, che Linux quindi compila nel file Device Tree Blob (DTB) utilizzato dal bootloader.

Un overlay dell'albero dei dispositivi (DTO) consente di sovrapporre un BLOB dell'albero dei dispositivi centrale (DTB) sull'albero dei dispositivi. Un bootloader che utilizza DTO può mantenere il DT del sistema su chip (SoC) e sovrapporre dinamicamente un DT specifico del dispositivo, aggiungendo nodi all'albero e apportando modifiche alle proprietà dell'albero esistente.

Questa pagina descrive un tipico flusso di lavoro del bootloader per il caricamento di un DT e fornisce un elenco di termini DT comuni. Altre pagine di questa sezione descrivono come implementare il supporto del bootloader per DTO , come compilare , verificare e ottimizzare l'implementazione DTO e come utilizzare più DT . È inoltre possibile ottenere dettagli sulla sintassi DTO e sulla formattazione della partizione DTO / DTBO richiesta.

Aggiornamenti nella versione di Android 9

In Android 9, il bootloader non deve modificare le proprietà definite negli overlay dell'albero dei dispositivi prima di passare il BLOB dell'albero dei dispositivi unificato al kernel.

Caricamento di un albero dei dispositivi

Il caricamento di una struttura di dispositivi nel bootloader comporta la creazione, il partizionamento e l'esecuzione.

Figura 1. Implementazione tipica per il caricamento dell'albero dei dispositivi nel bootloader.
  1. Costruire:
    • Utilizzare il compilatore dell'albero dei dispositivi ( dtc ) per compilare l'origine dell'albero dei dispositivi ( .dts ) in un .dtb dell'albero dei dispositivi ( .dtb ), formattato come albero dei dispositivi appiattito.
    • .dtb il .dtb file .dtb in un percorso accessibile dal runtime del bootloader (dettagliato di seguito).
  2. Per partizionare, determinare un percorso di bootloader accessibile e attendibile nella memoria flash per inserire .dtb . Posizioni di esempio:
    Partizione di avvio
    Figura 2. Inserire .dtb nella partizione di avvio aggiungendo a image.gz e passando come " kernel " a mkbootimg .
    Partizione unica
    Figura 3. Inserire .dtb in una partizione unica (ad es. Partizione dtb ).
  3. Correre:
    • Carica .dtb dalla memoria in memoria.
    • Avvia il kernel dato l'indirizzo di memoria del DT caricato.

Terminologia

Questa sezione utilizza i seguenti termini dell'albero dei dispositivi:

DT Albero dei dispositivi
DTB Blob dell'albero dei dispositivi
DTBO BLOB dell'albero dei dispositivi per overlay
DTC Compilatore dell'albero dei dispositivi
DTO Sovrapposizione albero dispositivo
DTS Sorgente dell'albero dei dispositivi
FDT Tree Device appiattito, un formato binario contenuto in un file .dtb