ใช้ DT หลายรายการ

ผู้ให้บริการ 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

วิธีเรียกใช้มีดังนี้

  1. ระบุ SoC และโหลด .dtb ที่เกี่ยวข้องจาก ลงในหน่วยความจำ
  2. ระบุกระดานและโหลด .dtbo จากพื้นที่เก็บข้อมูลลงในหน่วยความจำ
  3. วางซ้อน .dtb ด้วย .dtbo เพื่อผสาน DT.
  4. เคอร์เนลเริ่มต้นโดยใช้ที่อยู่หน่วยความจำของ DT ที่ผสานรวม