ספקי SoC ו-ODM רבים תומכים בשימוש במספר עצי מכשיר (DT) במכשיר, לאפשר לתמונה אחת להפעיל מספר מק"טים או הגדרות אישיות. במקרים כאלה, תוכנת האתחול מזהה את החומרה וטוענת את ה-DT התואם בזמן הריצה:
איור 1. שכבות-על מרובות של עץ מכשירים (DTO) בתוכנת האתחול.
הערה: לא חובה להשתמש בכמה DT.
הגדרה
כדי להוסיף תמיכה במספר DT למודל ה-DTO, מגדירים רשימה של DT ראשי ורשימה נוספת של רכיבי DT כשכבת-על.
איור 2. הטמעת DTO בזמן ריצה למספר פלטפורמות DT.
תוכנת האתחול צריכה להיות מסוגלת:
- קוראים את המזהה של ה-SoC ובוחרים את ה-DT הראשי המתאים.
- קוראים את מזהה הלוח ובוחרים את קבוצת ה-DTs של שכבת-העל בהתאם.
צריך לבחור רק DT ראשי אחד לשימוש בזמן הריצה. DTs מרובים בשכבת-על ניתן להיבחר, אבל הן חייבות להיות תואמות לפלטפורמת השידור הראשי שנבחרה. באמצעות מספר שכבות-על עוזרות להימנע מאחסון שכבת-על אחת לכל לוח ב-DTBO מחיצה ולאפשר לתוכנת האתחול לקבוע את קבוצת המשנה של שכבות-העל הנדרשות בהתאם למזהה הלוח (או אולי על ידי בדיקה של הציוד ההיקפי). עבור לדוגמה, ייתכן שללוח א' יידרשו המכשירים שנוספו על ידי שכבות-העל 1, 3 ו-5, ייתכן שלוח ב' יצטרך להוסיף את המכשירים באמצעות שכבות-העל 1, 4 ו-5.
מחיצה
כדי לבצע חלוקה למחיצה, צריך לקבוע מיקום מהימן עם גישה לזמן ריצה של תוכנת אתחול
בזיכרון ה-Flash כדי לאחסן את ה-DTB וה-DTBO (תוכנת האתחול חייבת להיות מסוגלת לאתר
הקבצים האלה בתהליך ההתאמה). חשוב לזכור שפלטפורמות DTB ו-DTBO לא יכולות
קיימים באותה מחיצה. אם ה-DTB/DTBO שלכם נמצאים
מחיצה dtb
/dtbo
, שימוש במבנה ובכותרת של הטבלה
בפורמט של DTB ו-DTBO
פורמט חלוקה למחיצות (partitioning).
הפעלה בתוכנת אתחול
כדי להריץ:
- מזהים את ה-SoC וטוענים את קובץ ה- .dtb המתאים מ: בזיכרון.
- מזהים את הלוח וטוענים את הרכיב התואם
.dtbo
מאחסון לזיכרון. - שכבת-על של
.dtb
עם.dtbo
כדי לבצע מיזוג DT. - הפעלת הליבה על סמך כתובת הזיכרון של ה-DT המוזג.