Google стремится продвигать расовую справедливость для черных сообществ. Смотри как.
Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Наложения дерева устройств

Дерево устройств (DT) - это структура данных именованных узлов и свойств, которые описывают не обнаруживаемое оборудование. Операционные системы, такие как ядро ​​Linux, используемое в Android, используют DT для поддержки широкого спектра аппаратных конфигураций, используемых устройствами на платформе Android. Поставщики оборудования предоставляют свои собственные исходные файлы DT, которые затем Linux компилирует в файл Blob Tree Device Blob (DTB), используемый загрузчиком.

Наложение дерева устройств (DTO) позволяет накладывать центральный блоб дерева устройств (DTB) на дерево устройств. Загрузчик, использующий DTO, может поддерживать DT системы на кристалле (SoC) и динамически накладывать DT конкретного устройства, добавляя узлы в дерево и внося изменения в свойства существующего дерева.

На этой странице подробно описан типичный рабочий процесс загрузчика для загрузки DT и приведен список общих терминов DT. На других страницах этого раздела описывается, как реализовать поддержку загрузчика для DTO , как скомпилировать , проверить и оптимизировать реализацию DTO и как использовать несколько DT . Вы также можете получить подробную информацию о синтаксисе DTO и требуемом форматировании разделов DTO / DTBO .

Обновления в Android 9 Release

В Android 9 загрузчик не должен изменять свойства, определенные в наложениях дерева устройств, перед передачей объединенного большого двоичного дерева устройств ядру.

Загрузка дерева устройств

Загрузка дерева устройств в загрузчике включает сборку, разбиение и запуск.

Рисунок 1. Типичная реализация для загрузки дерева устройств в загрузчик.
  1. Строить:
    • Используйте компилятор дерева устройств ( dtc ), чтобы скомпилировать источник дерева устройств ( .dts ) в блоб дерева устройств ( .dtb ), отформатированный как сплющенное дерево устройств.
    • .dtb файл .dtb папку, .dtb во время выполнения загрузчика (подробно описано ниже).
  2. Чтобы разделить, определите доступное и .dtb расположение загрузчика во флэш-памяти для размещения .dtb . Пример местоположения:
    Загрузочный раздел
    Рисунок 2. Поместите .dtb в загрузочный раздел, добавив к image.gz и передавая в качестве « kernel » в mkbootimg .
    Уникальный раздел
    Рисунок 3. Поместите .dtb в уникальный раздел (например, раздел dtb ).
  3. Бежать:
    • Загрузите .dtb из хранилища в память.
    • Запустите ядро ​​по адресу памяти загруженного DT.

терминология

В этом разделе используются следующие термины дерева устройств:

DT Дерево устройств
DTB Blob Tree Устройства
DTBO Blob дерева устройств для наложения
DTC Компилятор дерева устройств
DTO Наложение дерева устройств
DTS Источник дерева устройств
FDT Сглаженное дерево устройств, двоичный формат, содержащийся в .dtb BLOB- .dtb