Birden Fazla DT Kullanma

Pek çok SoC satıcısı ve ODM, bir aygıtta birden çok DT kullanımını destekleyerek, bir görüntünün birden çok SKU / konfigürasyona güç sağlamasına olanak tanır. Bu gibi durumlarda, önyükleyici donanımı tanımlar ve ilgili DT'yi çalışma zamanında yükler:

Şekil 1. Önyükleyicide birden çok aygıt ağacı yer paylaşımı.

Not: Birden fazla DT kullanmak zorunlu değildir.

Kurulum

DTO modeline birden çok DT desteği eklemek için, ana DT'lerin bir listesini ve başka bir kaplama DT'leri listesi ayarlayın.

Şekil 2. Birden çok DT için Runtime DTO uygulaması.

Önyükleyici şunları yapabilmelidir:

  • SoC ID'yi okuyun ve ilgili ana cihaz ağacını seçin ve
  • Kart kimliğini okuyun ve buna göre kaplama aygıt ağaçlarının setini seçin.

Çalışma zamanında kullanılmak üzere yalnızca bir ana DT seçilmelidir. Birden fazla yer paylaşımlı DT seçilebilir, ancak bunlar seçilen ana DT ile uyumlu olmalıdır. Birden fazla yer paylaşımının kullanılması, DTBO bölümü içinde kart başına bir kaplama saklamaktan kaçınmaya yardımcı olabilir ve önyükleyicinin kart kimliğine göre (veya muhtemelen çevre birimlerini araştırarak) gerekli kaplamaların alt kümesini belirlemesini sağlar. Örneğin, Kart A, katmanlar 1, 3 ve 5 tarafından eklenen cihazlara ihtiyaç duyabilirken, Kart B, katmanlar 1, 4 ve 5 tarafından eklenen cihazlara ihtiyaç duyabilir.

Bölümleme

Bölümlemek için, DTB'leri ve DTBO'ları depolamak için flash bellekte önyükleyici çalışma zamanı erişimli ve güvenilir bir konum belirleyin (bootloader bu dosyaları eşleştirme sürecinde bulabilmelidir). DTB'lerin ve DTBO'ların aynı bölümde bulunamayacağını unutmayın. DTB'leriniz / DTBO'larınız dtb / dtbo bölümündeyse, DTB / DTBO Bölüm Biçimi'nde ayrıntılı olarak açıklanan tablo yapısını ve başlık biçimini kullanın.

Bootloader'da çalışıyor

Koşmak:

  1. SoC'yi tanımlayın ve ilgili .dtb'yi depodan belleğe yükleyin.
  2. Kartı tanımlayın ve ilgili .dtbo dosyasını depodan belleğe yükleyin.
  3. Birleştirilmiş bir DT olması için .dtbo .dtb ile .dtbo .
  4. Birleştirilmiş DT'nin bellek adresi verilen çekirdeği başlatın.