Korzystanie z wielu ID

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Wielu dostawców SoC i ODM obsługuje korzystanie z wielu DT na urządzeniu, dzięki czemu jeden obraz może zasilać wiele jednostek SKU/konfiguracji. W takich przypadkach bootloader identyfikuje sprzęt i ładuje odpowiedni identyfikator w czasie wykonywania:

Rysunek 1. Nakładka wielu drzew urządzeń w bootloaderze.

Uwaga: Używanie wielu ID nie jest obowiązkowe.

Konfiguracja

Aby dodać obsługę wielu ID do modelu DTO, skonfiguruj listę głównych ID i inną listę nałożonych ID.

Rysunek 2. Implementacja Runtime DTO dla wielu DT.

Bootloader powinien być w stanie:

  • Odczytaj identyfikator SoC i wybierz odpowiednie drzewo głównego urządzenia, a następnie
  • Odczytaj identyfikator płytki i odpowiednio wybierz zestaw drzewek urządzeń nakładek.

Tylko jeden główny ID powinien być wybrany do użycia w czasie wykonywania. Można wybrać wiele nakładek ID, ale muszą one być kompatybilne z wybranym głównym ID. Korzystanie z wielu nakładek może pomóc uniknąć przechowywania jednej nakładki na płytkę w obrębie partycji DTBO i umożliwić bootloaderowi określenie podzbioru wymaganych nakładek na podstawie identyfikatora płyty (lub ewentualnie poprzez sondowanie urządzeń peryferyjnych). Na przykład tablica A może wymagać urządzeń dodanych przez nakładki 1, 3 i 5, podczas gdy tablica B może wymagać urządzeń dodanych przez nakładki 1, 4 i 5.

Partycjonowanie

Aby dokonać partycji, określ w pamięci flash zaufaną lokalizację dostępną dla środowiska uruchomieniowego bootloadera do przechowywania DTB i DTBO (bootloader musi być w stanie zlokalizować te pliki w dopasowanym procesie). Należy pamiętać, że DTB i DTBO nie mogą istnieć na tej samej partycji. Jeśli Twoje DTB/DTBO znajdują się w partycji dtb / dtbo , użyj struktury tabeli i formatu nagłówka wyszczególnionych w DTB/DTBO Partition Format .

Działa w bootloaderze

Biegać:

  1. Zidentyfikuj SoC i załaduj odpowiedni plik .dtb z magazynu do pamięci.
  2. Zidentyfikuj płytę i załaduj odpowiedni .dtbo z pamięci do pamięci.
  3. .dtb na .dtbo , aby być scalonym ID.
  4. Uruchom jądro podając adres pamięci scalonego identyfikatora.