1# OP-TEE - version 0.2.0 2 3## New features 4 5### Linux Driver Refactoring 6 7Linux Driver has been refactored. It is now split in two parts: 8* optee.ko, the generic Linux driver. It contains all functionality 9 common to all backends. 10* optee_armtz.ko, a specific backend dedicated to the TrustZone optee. 11 It depends on optee.ko. 12 13Loading the TrustZone optee linux driver module is now performed using 14 15 modprobe optee_armtz 16 17Thanks to the dependency between the generic and the backend modules, optee.ko is then automatically loaded. 18 19### Misc new features 20* support PL310 lock down at TEE boot 21* add 64bits support (division / print) 22 23## Tested on 24Definitions: 25 26| Type | Meaning | 27| ---- | ------- | 28| Standard tests | The optee_test project. | 29| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 30| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 31 32* ARM Juno Board (vexpress-juno), standard tests + extended tests. 33 34* Foundation Models (vexpress-fvp), standard + extended tests. 35 36* QEMU (vexpress-qemu), standard + extended tests. 37 38* STM Cannes (stm-cannes), standard + extended tests. 39 40 41## Issues resolved since last release 42* Fix user TA trace issue, in order each TA is able to select its own trace level 43 44 45------------------------------------------- 46#OP-TEE - version 0.1.0 47 48## New features 49Below is a summary of the most important features added, but at the end you will 50find a link that present you all commits between the current and previous 51release tag. 52 53* GlobalPlatform Client API v1.0 support. 54 55* GlobalPlatform Internal API v1.0 support. 56 57* GlobalPlatform Secure Elements v1.0 support. 58 59* Add hardware support for 60 61 * Allwinner A80, ARMv7-A. 62 63 * ARM Juno Board, ARMv8-A. 64 65 * Foundation Models, ARMv8-A. 66 67 * Fast Models, ARMv8-A. 68 69 * QEMU, ARMv7-A. 70 71 * STM Cannes, ARMv7-A. 72 73 * STM Orly2, ARMv7-A. 74 75* Add LibTomCrypt as the default software cryptographic library. 76 77* Add cryptographic abstraction layer in on secure side to ease the use of 78 other cryptographic software libraries or adding support for hardware 79 acceleration. 80 81* Extended cryptographic API with support for HKDF, Concat KDF and PBKDF2. 82 83* SHA-1 and SHA-256 ARMv8-A crypto extension implementation. 84 85* Enabled paging support in OP-TEE OS. 86 87* Add support for xtest (both standard and extended) in QEMU and FVP setup 88 scripts. 89 90* Add documentation for the OS design, cryptographic abstraction layer, secure 91 elements design, the build system, GitHub usage, key derivation extensions, 92 ARM-Trusted Firmware usage within OP-TEE and GlobalPlatform usage within 93 OP-TEE. 94 95* Integrate support for Travis CI. 96 97* [Link][github_commits_0_1_0] to a list of all commits between this and 98 previous release. 99 100 101## Tested on 102Definitions: 103 104| Type | Meaning | 105| ---- | ------- | 106| Standard tests | The optee_test project. | 107| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.0.0. | 108| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 109 110* Allwinner A80 (plat-sunxi), hello world test. 111 112* ARM Juno Board (vexpress-juno), standard tests. 113 114* Foundation Models (plat-vexpress-fvp), standard + extended tests 115 116* QEMU (plat-vexpress-qemu), standard + extended tests (and Secure Elements 117 tested separately). 118 119* STM Cannes (plat-stm-cannes), standard + extended tests. 120 121 122## Issues resolved since last release 123N/A since this is the first release tag on OP-TEE. 124 125 126## Known issues 127* Storage is implemented, but not "Secure storage", meaning that a client 128 needs to do encrypt files on their own before storing the files. 129 130* Issue(s) open on GitHub 131 * [#95][pr95]: An error about building the test code of libtomcrypt. 132 133 * [#149][pr149]: when testing optee os with arm trusted firmware (I 134 utilized optee os tee.bin as bl32 image) on juno platform, I got an 135 error. 136 137 * [#161][pr161]: tee_svc_cryp.c lacks accessibility checks on 138 user-supplied TEE_Attributes. 139 140[hello_world]: https://github.com/jenswi-linaro/lcu14_optee_hello_world 141[github_commits_0_1_0]: https://github.com/OP-TEE/optee_os/compare/b01047730e77127c23a36591643eeb8bb0487d68...999e4a6c0f64d3177fd3d0db234107b6fb860884 142[pr95]: https://github.com/OP-TEE/optee_os/issues/95 143[pr149]: https://github.com/OP-TEE/optee_os/issues/149 144[pr161]: https://github.com/OP-TEE/optee_os/issues/161 145 146