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

Репозитории Trusty доступны в проекте Android с открытым исходным кодом (AOSP).

Используйте эти ссылки, чтобы найти соответствующие ветки ядра Trusty в AOSP:

Установить репо

Чтобы загрузить Trusty, сначала скачайте и установите Repo .

После успешной установки Repo вы можете клонировать репозиторий Android Trusty:

mkdir trusty
cd trusty
repo init -u https://android.googlesource.com/trusty/manifest -b main
repo sync -j32

Строить

Используйте следующее, чтобы создать общий образ Arm64 для Trusty:

./trusty/vendor/google/aosp/scripts/build.py generic-arm64

Результаты сборки находятся в папке build-root/build-generic-arm64/. Найдите lk.bin — образ TEE со всеми приложениями, скомпилированными в:

ls build-root/build-generic-arm64/lk.bin

Установить

Можно собрать lk.bin в образ прошивки и прошить на устройство. Создание образов прошивки зависит от используемой платы. Обратитесь к производителю платы за инструкциями.

Верный на QEMU

Установите необходимые пакеты на хост, если вы еще этого не сделали:

sudo apt install libpixman-1-dev libstdc++-8-dev pkg-config libglib2.0-dev libusb-1.0-0-dev

Соберите (используя сценарии сервера сборки) образы Trusty и qemu:

trusty/vendor/google/aosp/scripts/build.py qemu-generic-arm64-test-debug

При этом также выполняются все тесты, настроенные для этой цели.

Чтобы вручную запустить тест Test-Runner (активация порта) (com.android.ipc-unittest.ctrl):

build-root/build-qemu-generic-arm64-test-debug/run --headless --boot-test "com.android.ipc-unittest.ctrl"

Чтобы запустить тест-бегун (com.android.ipc-unittest.ctrl) с выводом отладки ядра при загрузке:

build-root/build-qemu-generic-arm64-test-debug/run-qemu --boot-test "com.android.ipc-unittest.ctrl" --headless --verbose

ATF отключает консоль перед возвратом к тестировщику. Чтобы отключить это локально, закомментируйте весь код в bl31_plat_runtime_setup in external/arm-trusted-firmware/plat/common/aarch64/plat_common.c .

Чтобы запустить тест из оболочки Android:

build-root/build-qemu-generic-arm64-test-debug/run-qemu --shell-command "/data/nativetest64/tipc-test/tipc-test -t ta2ta-ipc" --headless

Чтобы загрузить интерактивную оболочку (из уже встроенной встроенной оболочки):

build-root/build-qemu-generic-arm64-test-debug/run

У этой команды также есть множество других доступных переопределений — проверьте --help, чтобы узнать больше.

Если при запуске qmeu.py происходит сбой adb devices -l , версия сервера adb, работающего в вашей системе, может быть неправильной:

adb kill-server

Чтобы загрузить сборку Android локально:

build-root/build-qemu-generic-arm64-test-debug/run --android path/to/your/android/source/dir

Чтобы собрать Android для 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
,

Репозитории Trusty доступны в проекте Android с открытым исходным кодом (AOSP).

Используйте эти ссылки, чтобы найти соответствующие ветки ядра Trusty в AOSP:

Установить репо

Чтобы загрузить Trusty, сначала скачайте и установите Repo .

После успешной установки Repo вы можете клонировать репозиторий Android Trusty:

mkdir trusty
cd trusty
repo init -u https://android.googlesource.com/trusty/manifest -b main
repo sync -j32

Строить

Используйте следующее, чтобы создать общий образ Arm64 для Trusty:

./trusty/vendor/google/aosp/scripts/build.py generic-arm64

Результаты сборки находятся в папке build-root/build-generic-arm64/. Найдите lk.bin — образ TEE со всеми приложениями, скомпилированными в:

ls build-root/build-generic-arm64/lk.bin

Установить

Можно собрать lk.bin в образ прошивки и прошить на устройство. Создание образов прошивки зависит от используемой платы. Обратитесь к производителю платы за инструкциями.

Верный на QEMU

Установите необходимые пакеты на хост, если вы еще этого не сделали:

sudo apt install libpixman-1-dev libstdc++-8-dev pkg-config libglib2.0-dev libusb-1.0-0-dev

Соберите (используя сценарии сервера сборки) образы Trusty и qemu:

trusty/vendor/google/aosp/scripts/build.py qemu-generic-arm64-test-debug

При этом также выполняются все тесты, настроенные для этой цели.

Чтобы вручную запустить тест Test-Runner (активация порта) (com.android.ipc-unittest.ctrl):

build-root/build-qemu-generic-arm64-test-debug/run --headless --boot-test "com.android.ipc-unittest.ctrl"

Чтобы запустить тест-бегун (com.android.ipc-unittest.ctrl) с выводом отладки ядра при загрузке:

build-root/build-qemu-generic-arm64-test-debug/run-qemu --boot-test "com.android.ipc-unittest.ctrl" --headless --verbose

ATF отключает консоль перед возвратом к тестировщику. Чтобы отключить это локально, закомментируйте весь код в bl31_plat_runtime_setup in external/arm-trusted-firmware/plat/common/aarch64/plat_common.c .

Чтобы запустить тест из оболочки Android:

build-root/build-qemu-generic-arm64-test-debug/run-qemu --shell-command "/data/nativetest64/tipc-test/tipc-test -t ta2ta-ipc" --headless

Чтобы загрузить интерактивную оболочку (из уже встроенной):

build-root/build-qemu-generic-arm64-test-debug/run

У этой команды также есть множество других доступных переопределений — проверьте --help, чтобы узнать больше.

Если при запуске qmeu.py происходит сбой adb devices -l , версия сервера adb, работающего в вашей системе, может быть неправильной:

adb kill-server

Чтобы загрузить сборку Android локально:

build-root/build-qemu-generic-arm64-test-debug/run --android path/to/your/android/source/dir

Чтобы собрать Android для 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