Cihaz ağacı (DT), adlandırılmış düğümler ve özelliklerden oluşan bir veri yapısıdır. Bu yapı, keşfedilemeyen donanımı tanımlar. Android'de kullanılan Linux çekirdeği gibi çekirdekler, Android destekli cihazlar tarafından kullanılan çok çeşitli donanım yapılandırmalarını desteklemek için DT'leri kullanır. Donanım satıcıları, cihaz ağacı derleyicisi kullanılarak cihaz ağacı blob'u (DTB) dosyasına derlenen kendi cihaz ağacı kaynağı (DTS) dosyalarını sağlar. Bu dosyalar daha sonra önyükleyici tarafından kullanılır. DTB dosyası, ikili biçimde düzleştirilmiş bir cihaz ağacı içeriyor.
Cihaz ağacı kaplaması (DTO), merkezi bir DTB'nin DT'ye (kaplama için cihaz ağacı blobu (DTBO)) kaplanmasını sağlar. DTO kullanan bir önyükleyici, çip üzerinde sistem (SoC) DT'yi koruyabilir ve cihaza özel bir DT'yi dinamik olarak yerleştirebilir, ağaca düğümler ekleyebilir ve mevcut ağaçtaki özelliklerde değişiklik yapabilir.
Android 9 sürümündeki güncellemeler
Android 9'da, birleştirilmiş DTB'yi çekirdeğe iletmeden önce önyükleyici, DTO'larda tanımlanan özellikleri değiştirmemelidir.
DT yükleme
Önyükleyicide DT yüklemek için derleme, bölümleme ve çalıştırma işlemleri gerekir.
1. şekil. Bootloader'da cihaz ağacını yüklemeye yönelik tipik uygulama.
DTB oluşturmak ve flash'lamak için:
1a. DTS'yi (
.dts
) DTB'ye (.dtb
) derlemek için DTC'yi (dtc
) kullanın. DTB, düzleştirilmiş DT olarak biçimlendirilir. 1b..dtb
dosyasını, önyükleyici çalışma zamanında erişilebilen bir konuma (aşağıda ayrıntılı olarak açıklanmıştır) yükleyin.Bölüm oluşturmak için flash bellekte
.dtb
öğesini yerleştireceğiniz, önyükleyici çalışma zamanında erişilebilen ve güvenilir bir konum belirleyin. Örnek konumlar:Şekil 2. .dtb dosyasını, image.gz dosyasına ekleyip mkbootimg'ye "kernel" olarak ileterek bir önyükleme bölümüne yerleştirin.
3.Şekil .dtb dosyasını benzersiz bir bölüme
(örneğin, dtb bölümü) yerleştirin.DTB'yi yüklemek ve çekirdeği başlatmak için:
.dtb
öğesini depolama alanından belleğe yükleyin.- Yüklü DT'nin bellek adresini kullanarak çekirdeği başlatın.
Sırada ne var?
Bu sayfada, DT yüklemeyle ilgili tipik bir önyükleyici iş akışı ayrıntılı olarak açıklanmakta ve yaygın DT terimlerinin listesi verilmektedir. Bu bölümdeki diğer sayfalarda, önyükleyici desteğini uygulama, derleme, doğrulama ve DTO'nuzu optimize etme ve birden fazla DT kullanma konuları açıklanmaktadır. Ayrıca DTO söz dizimi ve gerekli DTO ile DTBO bölümü biçimlendirmesi hakkında ayrıntılı bilgi edinebilirsiniz.