Repozytoria Zaufane są dostępne w Androidzie Open Projekt źródłowy (AOSP).
Użyj tych linków, aby znaleźć odpowiednie gałęzie jądra Trusty w AOSP:
Zainstaluj repozytorium
Aby pobrać Trusty, najpierw pobierz i zainstaluj Repo.
Po zainstalowaniu Repo możesz skopiować repozytorium Android Trusty:
mkdir trusty
cd trusty
repo init -u https://android.googlesource.com/trusty/manifest -b main
repo sync -j32
Budowanie
Aby utworzyć ogólny obraz arm64 dla Trusty:
./trusty/vendor/google/aosp/scripts/build.py generic-arm64
Wyniki kompilacji są poniżej build-root/build-generic-arm64/.
Szukaj elementu lk.bin
, czyli obrazu TEE zawierającego wszystkie aplikacje skompilowane w ten sposób:
ls build-root/build-generic-arm64/lk.bin
Zainstaluj
Możesz zmontować lk.bin
w obraz oprogramowania układowego i przekazać go do urządzenia.
Generowanie obrazów oprogramowania sprzętowego różni się w zależności od używanej płyty głównej.
Aby uzyskać instrukcje, skontaktuj się z producentem płyty głównej.
Trusty w QEMU
Zainstaluj potrzebne pakiety na hoście:
sudo apt install libpixman-1-dev libstdc++-8-dev pkg-config libglib2.0-dev libusb-1.0-0-dev
Utwórz (za pomocą skryptów serwera kompilacji) obrazy trusty i qemu:
trusty/vendor/google/aosp/scripts/build.py qemu-generic-arm64-test-debug
Spowoduje to również uruchomienie wszystkich testów skonfigurowanych dla tego miejsca docelowego.
Aby ręcznie uruchomić test test-runner (com.android.ipc-unittest.ctrl):
build-root/build-qemu-generic-arm64-test-debug/run --headless --boot-test "com.android.ipc-unittest.ctrl"
Aby uruchomić test uruchamiający (com.android.ipc-unittest.ctrl) z danymi wyjściowymi debugowania jądra podczas rozruchu:
build-root/build-qemu-generic-arm64-test-debug/run-qemu --boot-test "com.android.ipc-unittest.ctrl" --headless --verbose
Część strony widoczna na ekranie wyłącza konsolę, zanim wróci do mechanizmu uruchamiania testów. Aby wyłączyć tę funkcję lokalnie, dodaj komentarz do całego kodu w pliku bl31_plat_runtime_setup in external/arm-trusted-firmware/plat/common/aarch64/plat_common.c
.
Aby uruchomić test w powłoce Androida:
build-root/build-qemu-generic-arm64-test-debug/run-qemu --shell-command "/data/nativetest64/tipc-test/tipc-test -t ta2ta-ipc" --headless
Aby uruchomić interaktywną powłokę (z zaznaczonej gotowej powłoki):
build-root/build-qemu-generic-arm64-test-debug/run
To polecenie ma też wiele innych dostępnych zastąpień. Aby dowiedzieć się więcej, wpisz --help.
Jeśli wystąpi błąd adb devices -l
podczas uruchamiania qmeu.py
, wersja adb
Serwer działający w Twoim systemie może mieć nieprawidłową wersję:
adb kill-server
Aby uruchomić kompilację Androida, którą masz lokalnie:
build-root/build-qemu-generic-arm64-test-debug/run --android path/to/your/android/source/dir
Aby skompilować aplikację na Androida dla 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