These instructions demonstrate how to run an OP-TEE "Hello, world!" Trusted Application (TA) on Juno.
`ack-armlt'
+-------------+----------------------------+ | Workspace | <workspace> | | Platform | Juno | | Build | Build from source | | Environment | Linux/Android | | Kernel | ack-4.9-armlt | | Filesystem | OpenEmbedded Minimal 15.09 | +-------------+----------------------------+
Cmd> flash Flash> eraseall Flash> quit Cmd> usb_on
`<workspace>/recovery/'
`<workspace>/output/juno/juno-oe/uboot'
`/SOFTWARE/'
`$ sync'
`# ifconfig'
$ export JUNO_IP=<juno_ip_address> $ export HOST_CROSS_COMPILE=<workspace>/tools/gcc/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- $ export TA_CROSS_COMPILE=<workspace>/tools/gcc/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- $ export TEEC_EXPORT=<workspace>/optee/optee_client/out/export $ export TA_DEV_KIT_DIR=<workspace>/optee/optee_os/out/arm-plat-vexpress/export-ta_arm32/
Note: Replace `5.3.1-2016.05' with the correct release and date for your workspace.
`5.3.1-2016.05'
$ cd <workspace>/optee/ $ git clone https://github.com/jenswi-linaro/lcu14_optee_hello_world.git $ cd lcu14_optee_hello_world/ $ make
$ scp host/hello_world root@$JUNO_IP:~ $ find -name "*.ta" -exec scp {} root@$JUNO_IP:~ \; $ cd <workspace>/optee/optee_client/out $ tar zcf export.tar.gz export/ $ scp export.tar.gz root@$JUNO_IP:~
# cd ~ # mkdir -p /lib/optee_armtz/ # mv *.ta /lib/optee_armtz/ # tar xzf export.tar.gz # export LD_LIBRARY_PATH=~/export/lib:$LD_LIBRARY_PATH # ./export/bin/tee-supplicant & # ./hello_world Invoking TA to increment 42 TA incremented value to 43