ผู้ให้บริการ SoC และ ODM หลายรายรองรับการใช้แผนผังอุปกรณ์ (DT) หลายตัวในอุปกรณ์ การเปิดใช้อิมเมจเดียวเพื่อขับเคลื่อน SKU หรือการกำหนดค่าหลายรายการ ในกรณีดังกล่าว ฟิลด์ Bootloader ระบุฮาร์ดแวร์และโหลด DT ที่เกี่ยวข้องขณะรันไทม์:
รูปที่ 1 การวางซ้อนแผนผังอุปกรณ์หลายรายการ (DTO) ใน Bootloader
หมายเหตุ: คุณไม่จำเป็นต้องใช้ DT หลายรายการ
ตั้งค่า
หากต้องการเพิ่มการรองรับ DT หลายรายการไปยังโมเดล DTO ให้ตั้งค่ารายการ DT หลัก และอีกรายการ DT ซ้อนทับ
รูปที่ 2 การติดตั้งใช้งานรันไทม์ DTO สำหรับ DT หลายแห่ง
Bootloader ควรทำสิ่งต่อไปนี้ได้
- อ่านรหัส SoC และเลือก DT หลักที่เกี่ยวข้อง
- อ่านรหัสกระดานและเลือกชุด DT ที่ซ้อนทับให้ตรงกัน
ควรเลือก DT หลักเพียง 1 รายการสำหรับการใช้งานขณะรันไทม์ DT วางซ้อนหลายรายการ แต่ก็ต้องใช้ได้กับ DT หลักที่เลือก การใช้ การวางซ้อนหลายรายการจะช่วยหลีกเลี่ยงการจัดเก็บการวางซ้อน 1 รายการต่อกระดานภายใน DTBO พาร์ติชันและเปิดใช้ Bootloader เพื่อกำหนดชุดย่อยของการวางซ้อนที่จำเป็น โดยอิงตามรหัสบอร์ด (หรือโดยการตรวจสอบอุปกรณ์ต่อพ่วง) สำหรับ ตัวอย่างเช่น กระดาน A อาจต้องเพิ่มอุปกรณ์ที่การวางซ้อน 1, 3 และ 5 ในขณะที่ Board B อาจต้องเพิ่มอุปกรณ์ตามการวางซ้อน 1, 4 และ 5
พาร์ติชัน
ในการแบ่งพาร์ติชัน ให้ระบุตำแหน่งที่เชื่อถือได้และเข้าถึงได้รันไทม์ของ Bootloader
ในหน่วยความจำแฟลชเพื่อจัดเก็บ DTB และ DTBO (bootloader จะต้องค้นหาได้
ไฟล์เหล่านี้ในกระบวนการจับคู่) โปรดทราบว่า DTB และ DTBO ไม่สามารถ
อยู่ในพาร์ติชันเดียวกัน หาก DTB/DTBO อยู่ใน
พาร์ติชัน dtb
/dtbo
ใช้โครงสร้างตารางและส่วนหัว
รูปแบบที่มีรายละเอียดใน DTB และ DTBO
รูปแบบพาร์ติชัน
เรียกใช้ใน Bootloader
วิธีเรียกใช้มีดังนี้
- ระบุ SoC และโหลด .dtb ที่เกี่ยวข้องจาก ลงในหน่วยความจำ
- ระบุกระดานและโหลด
.dtbo
จากพื้นที่เก็บข้อมูลลงในหน่วยความจำ - วางซ้อน
.dtb
ด้วย.dtbo
เพื่อผสาน DT. - เคอร์เนลเริ่มต้นโดยใช้ที่อยู่หน่วยความจำของ DT ที่ผสานรวม