ที่เก็บ Trusty มีอยู่ใน Android Open Source Project (AOSP)
ใช้ลิงก์เหล่านี้เพื่อค้นหาสาขาเคอร์เนล Trusty ที่เหมาะสมใน AOSP:
กำลังติดตั้ง Repo
หากต้องการดาวน์โหลด 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
สร้าง (โดยใช้สคริปต์เซิร์ฟเวอร์ build) อิมเมจที่เชื่อถือได้และ qemu:
trusty/vendor/google/aosp/scripts/build.py qemu-generic-arm64-test-debug
การดำเนินการนี้จะดำเนินการการทดสอบทั้งหมดที่กำหนดค่าไว้สำหรับเป้าหมายนี้ด้วย
หากต้องการรันการทดสอบนักวิ่งด้วยตนเอง (การเปิดใช้งานพอร์ต) (com.android.ipc-unittest.ctrl):
build-root/build-qemu-generic-arm64-test-debug/run --headless --boot-test "com.android.ipc-unittest.ctrl"
หากต้องการรันการทดสอบ test-runner (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 ใน 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 เพื่อดูข้อมูลเพิ่มเติม
หาก adb devices -l
ล้มเหลวเมื่อรัน qmeu.py
เวอร์ชันของเซิร์ฟเวอร์ 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