بسیاری از فروشندگان SoC و ODM از استفاده از چندین ساختار درختی دستگاه (DT) در یک دستگاه پشتیبانی میکنند، که امکان میدهد یک تصویر چندین SKU یا پیکربندی را تغذیه کند. در چنین مواردی، بارکننده سختافزار را شناسایی میکند و DT مربوطه را در زمان اجرا بار میکند:

شکل ۱. چندین رونهاد درخت دستگاه (DTO) در راهانداز سیستم.
توجه: استفاده از چند DT الزامی نیست.
راهاندازی
برای افزودن پشتیبانی از چندین DT به مدل DTO، فهرستی از DTهای اصلی و فهرست دیگری از DTهای رونهاد راهاندازی کنید.

شکل ۲. پیادهسازی DTO زمان اجرا برای چندین DT.
راهانداز سیستم باید بتواند:
- شناسه SoC را بخوانید و DT اصلی مربوطه را انتخاب کنید.
- شناسه برد را بخوانید و مجموعه DTهای همپوشان را براساس آن انتخاب کنید.
فقط یک DT اصلی باید برای استفاده در زمان اجرا انتخاب شود. چندین DT رونهاد را میتوان انتخاب کرد اما باید با DT اصلی انتخابشده سازگار باشند. استفاده از چند رونهاد میتواند به جلوگیری از ذخیره یک رونهاد در هر برد در بخش DTBO کمک کند و به بارکننده امکان دهد زیرمجموعه رونهادهای موردنیاز را براساس شناسه برد (یا احتمالاً با کاوش پیرامونیها) تعیین کند. برای مثال، «تابلو A» ممکن است به دستگاههای اضافهشده توسط رونهادهای ۱، ۳، و ۵ نیاز داشته باشد، درحالیکه «تابلو B» ممکن است به دستگاههای اضافهشده توسط رونهادهای ۱، ۴، و ۵ نیاز داشته باشد.
پارتیشن
برای پارتیشنبندی، مکان مطمئن و قابلدسترسی در زمان اجرای بوتلودر را در حافظه فلاش تعیین کنید تا DTB و DTBO در آن ذخیره شود (بوتلودر باید بتواند این فایلها را در فرایند تطبیق پیدا کند). بهخاطر داشته باشید که DTB و DTBO نمیتوانند
در یک پارتیشن وجود داشته باشند. اگر DTB/DTBO شما در بخش
dtb/dtbo است، از ساختار جدول و قالب سرصفحه
شرحدادهشده در قالب بخش
DTB و DTBO استفاده کنید.
اجرا در راهانداز سیستم
برای اجرا:
- سیستم روی تراشه را شناسایی میکند و فایل .dtb مربوطه را از فضای ذخیرهسازی در حافظه بار میکند.
- صفحه را شناسایی کنید و
.dtboمربوطه را از فضای ذخیرهسازی در حافظه بار کنید. -
.dtbرا با.dtboرونهاد کنید تا DT ادغامشدهای ایجاد شود. - هسته را با نشانی حافظه DT ادغامشده شروع کنید.