دعم DTO

يعمل تراكب شجرة الأجهزة (DTO) على توسيع تطبيقات شجرة الأجهزة المسطحة (FDT) الحالية من خلال تمكين مساحة المستخدمين من تعديل بيانات شجرة الأجهزة الأولية في النواة في وقت التشغيل عن طريق تحميل FDTs التراكب الإضافية التي تعدل البيانات الأصلية. لا يتطلب Android تحديثات وقت التشغيل لـ DT blobs من مساحة المستخدمين، ولكنه بدلاً من ذلك يوصي البائعين بإضافة تصحيح Devicetree في أداة تحميل التشغيل بمساعدة libfdt أو libufdt .

دعم أندرويد DTO

يختلف دعم Android لـ DTOs حسب إصدار Android:

  • لا يتطلب Android 7.x والإصدارات الأقدم دعم Devicetree ولا يقدم توصيات حول كيفية قيام البائعين بتمرير نقاط DT إلى kernel أو مكان تخزينها.
  • يوصي Android 8.x بدعم Devicetree لإبقاء الأجزاء الخاصة باللوحة وأجزاء SoC فقط من kernel منفصلة.
  • يتطلب نظام التشغيل Android 9 والإصدارات الأحدث وجود قسم تراكب شجرة النقطة (DTBO) على الجهاز وتطبيق DTO واحد على الأقل.

متطلبات تقسيم DTO

تقوم معظم أجهزة Android بإلحاق النقطة DT بالنواة في وقت الإنشاء ويقوم محمل الإقلاع بتحميل النقطة من النواة. ومع ذلك، نظرًا لأن نقاط DT تعتبر جزءًا من نواة النظام على الرقاقة (SoC)، فإن Android ليس لديه متطلبات محددة لكيفية إنشاء نقاط DT أو تخزينها. يمكن للأجهزة إلحاق النقطة DT بالنواة أو تخزين النقطة الكبيرة في قسم منفصل؛ الشرط الوحيد هو أن يعرف برنامج تحميل التشغيل كيفية ومكان تحميل DT blob منه.

لدعم DTO، يجب أن تحتوي الأجهزة على:

  • قسم DTBO واحد لكل صورة kernel لتراكب DT خاص باللوحة ويجب أن يعرف برنامج تحميل التشغيل مكان وكيفية تحميل DTB الخاص بـ SoC. يعتمد حجم القسم على عدد التغييرات اللازمة لإنشاء نواة SoC — اختر حجمًا به مساحة للنمو من أجل التحديثات المستقبلية؛ عادةً ما يكون حجم القسم 8 ميجابايت أكثر من كافٍ.
  • تم تحديث أقسام DTO لأجهزة A/B . نواة الاسترداد هي نفس نواة Android، ولكن يجب إعداد القسم لأجهزة A/B حتى يمكن تحديثه عبر التحديثات عبر الهواء (OTA). يعتمد حجم القسم على الجهاز وعدد التغييرات الموجودة أعلى وحدة SoC kernel DT الرئيسية.

متطلبات أداة تحميل التشغيل DTO

لدعم DTO، يجب على أداة تحميل التشغيل:

  • تعرف على كيفية وأين (مع الأخذ في الاعتبار فتحة التمهيد لأجهزة A/B) لتحميل فقاعة DT الخاصة بشركة SoC بطريقة خاصة بالبائع (عادةً ما يتم استخراجها من نهاية صورة kernel حيث يتم إلحاق النقط الكبيرة بالنواة).
  • تعرف على كيفية ومكان تحميل تراكب DT blob بطريقة خاصة بالمورد.
  • قم بتصحيح نقطة DT الرئيسية باستخدام التراكب قبل تمرير شجرة الأجهزة المدمجة إلى النواة.

لمزيد من التفاصيل حول إضافة دعم لـ DTO في أداة تحميل التشغيل، راجع تراكبات شجرة الأجهزة .