Die Trusty-Repositories sind im Android Open Source Project (AOSP) verfügbar.
Über diese Links können Sie die entsprechenden Trusty-Kernel-Zweige in AOSP finden:
Repo installieren
Wenn Sie Trusty herunterladen möchten, müssen Sie zuerst Repo herunterladen und installieren.
Nachdem Repo erfolgreich installiert wurde, können Sie das Android Trusty-Repository klonen:
mkdir trusty
cd trusty
repo init -u https://android.googlesource.com/trusty/manifest -b main
repo sync -j32
Entwickeln
Verwenden Sie folgenden Code, um das generische arm64-Image für Trusty zu erstellen:
./trusty/vendor/google/aosp/scripts/build.py generic-arm64
Build-Ergebnisse liegen unter build-root/build-generic-arm64/.
Suche nach lk.bin
. Dabei handelt es sich um ein TEE-Bild mit allen Apps, die hier kompiliert sind:
ls build-root/build-generic-arm64/lk.bin
Installieren
Du kannst lk.bin
zu einem Firmware-Image zusammenfassen und auf das Gerät flashen.
Das Generieren von Firmware-Images hängt vom verwendeten Board ab.
Wenden Sie sich an den Hersteller Ihrer Tafel, um eine Anleitung zu erhalten.
Trusty unter QEMU
Installieren Sie die erforderlichen Pakete auf dem Host, falls noch nicht geschehen:
sudo apt install libpixman-1-dev libstdc++-8-dev pkg-config libglib2.0-dev libusb-1.0-0-dev
Erstellen Sie (mithilfe der Build-Server-Skripts) vertrauenswürdige Images und qemu-Images:
trusty/vendor/google/aosp/scripts/build.py qemu-generic-arm64-test-debug
Dadurch werden auch alle für dieses Ziel konfigurierten Tests ausgeführt.
So führen Sie einen Test-Runner-Test (Portaktivierung) (com.android.ipc-unittest.ctrl) manuell aus:
build-root/build-qemu-generic-arm64-test-debug/run --headless --boot-test "com.android.ipc-unittest.ctrl"
So führen Sie einen Test-Runner-Test (com.android.ipc-unittest.ctrl) mit Kernel-Debugausgabe beim Starten aus:
build-root/build-qemu-generic-arm64-test-debug/run-qemu --boot-test "com.android.ipc-unittest.ctrl" --headless --verbose
ATF deaktiviert die Konsole, bevor er zum Test-Runner zurückkehrt. Wenn Sie diese Funktion lokal deaktivieren möchten, kommentieren Sie den gesamten Code in bl31_plat_runtime_setup in external/arm-trusted-firmware/plat/common/aarch64/plat_common.c
aus.
So führen Sie einen Test über die Android-Shell aus:
build-root/build-qemu-generic-arm64-test-debug/run-qemu --shell-command "/data/nativetest64/tipc-test/tipc-test -t ta2ta-ipc" --headless
So starten Sie in einer interaktiven Shell (über die eingecheckte Prebuilt-Datei):
build-root/build-qemu-generic-arm64-test-debug/run
Für diesen Befehl gibt es auch eine Vielzahl anderer Überschreibungen. Weitere Informationen finden Sie unter „–help“.
Wenn adb devices -l
beim Ausführen von qmeu.py
fehlschlägt, wird die ADB-Version verwendet.
Server, der auf Ihrem System ausgeführt wird, hat möglicherweise die falsche Version:
adb kill-server
So starten Sie einen lokal vorhandenen Android-Build:
build-root/build-qemu-generic-arm64-test-debug/run --android path/to/your/android/source/dir
So erstellen Sie Android für Trusty:
mkdir android cd android repo init -u https://android.googlesource.com/platform/manifest -b main repo sync -j32 source build/envsetup.sh lunch qemu_trusty_arm64-userdebug m