Sebuah pohon perangkat (DT) adalah struktur data node bernama dan properti yang menggambarkan perangkat keras yang tidak dapat ditemukan. Sistem operasi, seperti kernel Linux yang digunakan di Android, menggunakan DT untuk mendukung berbagai konfigurasi perangkat keras yang digunakan oleh perangkat yang diberdayakan Android. Vendor perangkat keras menyediakan file sumber DT mereka sendiri, yang kemudian dikompilasi oleh Linux ke dalam file Device Tree Blob (DTB) yang digunakan oleh bootloader.
Hamparan pohon perangkat (DTO) memungkinkan gumpalan pohon perangkat pusat (DTB) untuk dihamparkan pada pohon perangkat. Bootloader yang menggunakan DTO dapat mempertahankan DT system-on-chip (SoC) dan secara dinamis melapisi DT khusus perangkat, menambahkan node ke pohon dan membuat perubahan pada properti di pohon yang ada.
Halaman ini merinci alur kerja bootloader khas untuk memuat DT dan menyediakan daftar istilah umum DT. Halaman lain di bagian ini menjelaskan cara menerapkan dukungan bootloader untuk DTO , cara mengompilasi , memverifikasi, dan mengoptimalkan implementasi DTO Anda , dan cara menggunakan beberapa DT . Anda juga bisa mendapatkan detail tentang sintaks DTO dan pemformatan partisi DTO/DTBO yang diperlukan.
Pembaruan di Android 9 Rilis
Di Android 9, bootloader tidak boleh mengubah properti yang ditentukan dalam hamparan pohon perangkat sebelum meneruskan gumpalan pohon perangkat terpadu ke kernel.
Memuat pohon perangkat
Memuat pohon perangkat di bootloader melibatkan membangun, mempartisi, dan menjalankan.
- Untuk membangun:
- Gunakan kompilator pohon perangkat (
dtc
) untuk mengompilasi sumber pohon perangkat (.dts
) ke dalam gumpalan pohon perangkat (.dtb
), yang diformat sebagai pohon perangkat yang diratakan. - Flash file
.dtb
ke lokasi yang dapat diakses runtime bootloader (rinci di bawah).
- Gunakan kompilator pohon perangkat (
- Untuk mempartisi, tentukan lokasi bootloader yang dapat diakses runtime dan tepercaya di memori flash untuk meletakkan
.dtb
. Contoh lokasi:Partisi Booting Partisi Unik - Untuk berlari:
- Muat
.dtb
dari penyimpanan ke dalam memori. - Mulai kernel dengan alamat memori DT yang dimuat.
- Muat
Terminologi
Bagian ini menggunakan istilah hierarki perangkat berikut:
DT | Pohon Perangkat |
---|---|
DTB | Gumpalan Pohon Perangkat |
DTBO | Blob Pohon Perangkat untuk Hamparan |
DTC | Kompilator Pohon Perangkat |
DTO | Hamparan Pohon Perangkat |
DTS | Sumber Pohon Perangkat |
FDT | Flattened Device Tree, format biner yang terdapat dalam file blob .dtb |