1*3d47a131SJoakim Bech# OP-TEE - version 3.12.0 (2021-01-20) 2*3d47a131SJoakim Bech 3*3d47a131SJoakim Bech- Links to the release pages, commits and pull requests merged into this release for: 4*3d47a131SJoakim Bech - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_12_0], [commits][OP_TEE_optee_os_commits_3_12_0] and [pull requests][OP_TEE_optee_os_pr_3_12_0] 5*3d47a131SJoakim Bech - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_12_0], [commits][OP_TEE_optee_client_commits_3_12_0] and [pull requests][OP_TEE_optee_client_pr_3_12_0] 6*3d47a131SJoakim Bech - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_12_0], [commits][OP_TEE_optee_test_commits_3_12_0] and [pull requests][OP_TEE_optee_test_pr_3_12_0] 7*3d47a131SJoakim Bech - OP-TEE/build: [release page][OP_TEE_build_release_3_12_0], [commits][OP_TEE_build_commits_3_12_0] and [pull requests][OP_TEE_build_pr_3_12_0] 8*3d47a131SJoakim Bech - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_12_0], [commits][linaro_swg_optee_examples_commits_3_12_0] and [pull requests][linaro_swg_optee_examples_pr_3_12_0] 9*3d47a131SJoakim Bech 10*3d47a131SJoakim Bech 11*3d47a131SJoakim Bech[OP_TEE_optee_os_release_3_12_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.12.0 12*3d47a131SJoakim Bech[OP_TEE_optee_os_commits_3_12_0]: https://github.com/OP-TEE/optee_os/compare/3.11.0...3.12.0 13*3d47a131SJoakim Bech[OP_TEE_optee_os_pr_3_12_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20 14*3d47a131SJoakim Bech 15*3d47a131SJoakim Bech[OP_TEE_optee_client_release_3_12_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.12.0 16*3d47a131SJoakim Bech[OP_TEE_optee_client_commits_3_12_0]: https://github.com/OP-TEE/optee_client/compare/3.11.0...3.12.0 17*3d47a131SJoakim Bech[OP_TEE_optee_client_pr_3_12_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20 18*3d47a131SJoakim Bech 19*3d47a131SJoakim Bech[OP_TEE_optee_test_release_3_12_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.12.0 20*3d47a131SJoakim Bech[OP_TEE_optee_test_commits_3_12_0]: https://github.com/OP-TEE/optee_test/compare/3.11.0...3.12.0 21*3d47a131SJoakim Bech[OP_TEE_optee_test_pr_3_12_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20 22*3d47a131SJoakim Bech 23*3d47a131SJoakim Bech[OP_TEE_build_release_3_12_0]: https://github.com/OP-TEE/build/releases/tag/3.12.0 24*3d47a131SJoakim Bech[OP_TEE_build_commits_3_12_0]: https://github.com/OP-TEE/build/compare/3.11.0...3.12.0 25*3d47a131SJoakim Bech[OP_TEE_build_pr_3_12_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20 26*3d47a131SJoakim Bech 27*3d47a131SJoakim Bech[linaro_swg_optee_examples_release_3_12_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.12.0 28*3d47a131SJoakim Bech[linaro_swg_optee_examples_commits_3_12_0]: https://github.com/linaro-swg/optee_examples/compare/3.11.0...3.12.0 29*3d47a131SJoakim Bech[linaro_swg_optee_examples_pr_3_12_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-10-16..2021-01-20 30*3d47a131SJoakim Bech 31c4def2a8SJerome Forissier# OP-TEE - version 3.11.0 (2020-10-16) 32c4def2a8SJerome Forissier 33c4def2a8SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for: 34c4def2a8SJerome Forissier - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_11_0], [commits][OP_TEE_optee_os_commits_3_11_0] and [pull requests][OP_TEE_optee_os_pr_3_11_0] 35c4def2a8SJerome Forissier - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_11_0], [commits][OP_TEE_optee_client_commits_3_11_0] and [pull requests][OP_TEE_optee_client_pr_3_11_0] 36c4def2a8SJerome Forissier - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_11_0], [commits][OP_TEE_optee_test_commits_3_11_0] and [pull requests][OP_TEE_optee_test_pr_3_11_0] 37c4def2a8SJerome Forissier - OP-TEE/build: [release page][OP_TEE_build_release_3_11_0], [commits][OP_TEE_build_commits_3_11_0] and [pull requests][OP_TEE_build_pr_3_11_0] 38c4def2a8SJerome Forissier - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_11_0], [commits][linaro_swg_optee_examples_commits_3_11_0] and [pull requests][linaro_swg_optee_examples_pr_3_11_0] 39c4def2a8SJerome Forissier 40c4def2a8SJerome Forissier 41c4def2a8SJerome Forissier[OP_TEE_optee_os_release_3_11_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.11.0 42c4def2a8SJerome Forissier[OP_TEE_optee_os_commits_3_11_0]: https://github.com/OP-TEE/optee_os/compare/3.10.0...3.11.0 43c4def2a8SJerome Forissier[OP_TEE_optee_os_pr_3_11_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16 44c4def2a8SJerome Forissier 45c4def2a8SJerome Forissier[OP_TEE_optee_client_release_3_11_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.11.0 46c4def2a8SJerome Forissier[OP_TEE_optee_client_commits_3_11_0]: https://github.com/OP-TEE/optee_client/compare/3.10.0...3.11.0 47c4def2a8SJerome Forissier[OP_TEE_optee_client_pr_3_11_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16 48c4def2a8SJerome Forissier 49c4def2a8SJerome Forissier[OP_TEE_optee_test_release_3_11_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.11.0 50c4def2a8SJerome Forissier[OP_TEE_optee_test_commits_3_11_0]: https://github.com/OP-TEE/optee_test/compare/3.10.0...3.11.0 51c4def2a8SJerome Forissier[OP_TEE_optee_test_pr_3_11_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16 52c4def2a8SJerome Forissier 53c4def2a8SJerome Forissier[OP_TEE_build_release_3_11_0]: https://github.com/OP-TEE/build/releases/tag/3.11.0 54c4def2a8SJerome Forissier[OP_TEE_build_commits_3_11_0]: https://github.com/OP-TEE/build/compare/3.10.0...3.11.0 55c4def2a8SJerome Forissier[OP_TEE_build_pr_3_11_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16 56c4def2a8SJerome Forissier 57c4def2a8SJerome Forissier[linaro_swg_optee_examples_release_3_11_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.11.0 58c4def2a8SJerome Forissier[linaro_swg_optee_examples_commits_3_11_0]: https://github.com/linaro-swg/optee_examples/compare/3.10.0...3.11.0 59c4def2a8SJerome Forissier[linaro_swg_optee_examples_pr_3_11_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-08-21..2020-10-16 60c4def2a8SJerome Forissier 61d1c63543SJerome Forissier# OP-TEE - version 3.10.0 (2020-08-21) 62d1c63543SJerome Forissier 63d1c63543SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for: 64d1c63543SJerome Forissier - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_10_0], [commits][OP_TEE_optee_os_commits_3_10_0] and [pull requests][OP_TEE_optee_os_pr_3_10_0] 65d1c63543SJerome Forissier - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_10_0], [commits][OP_TEE_optee_client_commits_3_10_0] and [pull requests][OP_TEE_optee_client_pr_3_10_0] 66d1c63543SJerome Forissier - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_10_0], [commits][OP_TEE_optee_test_commits_3_10_0] and [pull requests][OP_TEE_optee_test_pr_3_10_0] 67d1c63543SJerome Forissier - OP-TEE/build: [release page][OP_TEE_build_release_3_10_0], [commits][OP_TEE_build_commits_3_10_0] and [pull requests][OP_TEE_build_pr_3_10_0] 68d1c63543SJerome Forissier - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_10_0], [commits][linaro_swg_optee_examples_commits_3_10_0] and [pull requests][linaro_swg_optee_examples_pr_3_10_0] 69d1c63543SJerome Forissier 70d1c63543SJerome Forissier 71d1c63543SJerome Forissier[OP_TEE_optee_os_release_3_10_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.10.0 72d1c63543SJerome Forissier[OP_TEE_optee_os_commits_3_10_0]: https://github.com/OP-TEE/optee_os/compare/3.9.0...3.10.0 73d1c63543SJerome Forissier[OP_TEE_optee_os_pr_3_10_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21 74d1c63543SJerome Forissier 75d1c63543SJerome Forissier[OP_TEE_optee_client_release_3_10_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.10.0 76d1c63543SJerome Forissier[OP_TEE_optee_client_commits_3_10_0]: https://github.com/OP-TEE/optee_client/compare/3.9.0...3.10.0 77d1c63543SJerome Forissier[OP_TEE_optee_client_pr_3_10_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21 78d1c63543SJerome Forissier 79d1c63543SJerome Forissier[OP_TEE_optee_test_release_3_10_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.10.0 80d1c63543SJerome Forissier[OP_TEE_optee_test_commits_3_10_0]: https://github.com/OP-TEE/optee_test/compare/3.9.0...3.10.0 81d1c63543SJerome Forissier[OP_TEE_optee_test_pr_3_10_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21 82d1c63543SJerome Forissier 83d1c63543SJerome Forissier[OP_TEE_build_release_3_10_0]: https://github.com/OP-TEE/build/releases/tag/3.10.0 84d1c63543SJerome Forissier[OP_TEE_build_commits_3_10_0]: https://github.com/OP-TEE/build/compare/3.9.0...3.10.0 85d1c63543SJerome Forissier[OP_TEE_build_pr_3_10_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21 86d1c63543SJerome Forissier 87d1c63543SJerome Forissier[linaro_swg_optee_examples_release_3_10_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.10.0 88d1c63543SJerome Forissier[linaro_swg_optee_examples_commits_3_10_0]: https://github.com/linaro-swg/optee_examples/compare/3.9.0...3.10.0 89d1c63543SJerome Forissier[linaro_swg_optee_examples_pr_3_10_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-04-22..2020-08-21 90d1c63543SJerome Forissier 91af141c61SJens Wiklander# OP-TEE - version 3.9.0 (2020-04-22) 92af141c61SJens Wiklander 93af141c61SJens Wiklander- Links to the release pages, commits and pull requests merged into this release for: 94af141c61SJens Wiklander - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_9_0], [commits][OP_TEE_optee_os_commits_3_9_0] and [pull requests][OP_TEE_optee_os_pr_3_9_0] 95af141c61SJens Wiklander - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_9_0], [commits][OP_TEE_optee_client_commits_3_9_0] and [pull requests][OP_TEE_optee_client_pr_3_9_0] 96af141c61SJens Wiklander - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_9_0], [commits][OP_TEE_optee_test_commits_3_9_0] and [pull requests][OP_TEE_optee_test_pr_3_9_0] 97af141c61SJens Wiklander - OP-TEE/build: [release page][OP_TEE_build_release_3_9_0], [commits][OP_TEE_build_commits_3_9_0] and [pull requests][OP_TEE_build_pr_3_9_0] 98af141c61SJens Wiklander - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_9_0], [commits][linaro_swg_optee_examples_commits_3_9_0] and [pull requests][linaro_swg_optee_examples_pr_3_9_0] 99af141c61SJens Wiklander 100af141c61SJens Wiklander 101af141c61SJens Wiklander[OP_TEE_optee_os_release_3_9_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.9.0 102af141c61SJens Wiklander[OP_TEE_optee_os_commits_3_9_0]: https://github.com/OP-TEE/optee_os/compare/3.8.0...3.9.0 103af141c61SJens Wiklander[OP_TEE_optee_os_pr_3_9_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22 104af141c61SJens Wiklander 105af141c61SJens Wiklander[OP_TEE_optee_client_release_3_9_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.9.0 106af141c61SJens Wiklander[OP_TEE_optee_client_commits_3_9_0]: https://github.com/OP-TEE/optee_client/compare/3.8.0...3.9.0 107af141c61SJens Wiklander[OP_TEE_optee_client_pr_3_9_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22 108af141c61SJens Wiklander 109af141c61SJens Wiklander[OP_TEE_optee_test_release_3_9_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.9.0 110af141c61SJens Wiklander[OP_TEE_optee_test_commits_3_9_0]: https://github.com/OP-TEE/optee_test/compare/3.8.0...3.9.0 111af141c61SJens Wiklander[OP_TEE_optee_test_pr_3_9_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22 112af141c61SJens Wiklander 113af141c61SJens Wiklander[OP_TEE_build_release_3_9_0]: https://github.com/OP-TEE/build/releases/tag/3.9.0 114af141c61SJens Wiklander[OP_TEE_build_commits_3_9_0]: https://github.com/OP-TEE/build/compare/3.8.0...3.9.0 115af141c61SJens Wiklander[OP_TEE_build_pr_3_9_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22 116af141c61SJens Wiklander 117af141c61SJens Wiklander[linaro_swg_optee_examples_release_3_9_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.9.0 118af141c61SJens Wiklander[linaro_swg_optee_examples_commits_3_9_0]: https://github.com/linaro-swg/optee_examples/compare/3.8.0...3.9.0 119af141c61SJens Wiklander[linaro_swg_optee_examples_pr_3_9_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-05-22 120af141c61SJens Wiklander 121023e3365SJerome Forissier# OP-TEE - version 3.8.0 (2020-01-24) 122023e3365SJerome Forissier 123023e3365SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for: 124023e3365SJerome Forissier - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_8_0], [commits][OP_TEE_optee_os_commits_3_8_0] and [pull requests][OP_TEE_optee_os_pr_3_8_0] 125023e3365SJerome Forissier - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_8_0], [commits][OP_TEE_optee_client_commits_3_8_0] and [pull requests][OP_TEE_optee_client_pr_3_8_0] 126023e3365SJerome Forissier - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_8_0], [commits][OP_TEE_optee_test_commits_3_8_0] and [pull requests][OP_TEE_optee_test_pr_3_8_0] 127023e3365SJerome Forissier - OP-TEE/build: [release page][OP_TEE_build_release_3_8_0], [commits][OP_TEE_build_commits_3_8_0] and [pull requests][OP_TEE_build_pr_3_8_0] 128023e3365SJerome Forissier - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_8_0], [commits][linaro_swg_optee_examples_commits_3_8_0] and [pull requests][linaro_swg_optee_examples_pr_3_8_0] 129023e3365SJerome Forissier 130023e3365SJerome Forissier 131023e3365SJerome Forissier[OP_TEE_optee_os_release_3_8_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.8.0 132023e3365SJerome Forissier[OP_TEE_optee_os_commits_3_8_0]: https://github.com/OP-TEE/optee_os/compare/3.7.0...3.8.0 133023e3365SJerome Forissier[OP_TEE_optee_os_pr_3_8_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2020-01-24..2020-01-24 134023e3365SJerome Forissier 135023e3365SJerome Forissier[OP_TEE_optee_client_release_3_8_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.8.0 136023e3365SJerome Forissier[OP_TEE_optee_client_commits_3_8_0]: https://github.com/OP-TEE/optee_client/compare/3.7.0...3.8.0 137023e3365SJerome Forissier[OP_TEE_optee_client_pr_3_8_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2020-01-24 138023e3365SJerome Forissier 139023e3365SJerome Forissier[OP_TEE_optee_test_release_3_8_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.8.0 140023e3365SJerome Forissier[OP_TEE_optee_test_commits_3_8_0]: https://github.com/OP-TEE/optee_test/compare/3.7.0...3.8.0 141023e3365SJerome Forissier[OP_TEE_optee_test_pr_3_8_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2020-01-24 142023e3365SJerome Forissier 143023e3365SJerome Forissier[OP_TEE_build_release_3_8_0]: https://github.com/OP-TEE/build/releases/tag/3.8.0 144023e3365SJerome Forissier[OP_TEE_build_commits_3_8_0]: https://github.com/OP-TEE/build/compare/3.7.0...3.8.0 145023e3365SJerome Forissier[OP_TEE_build_pr_3_8_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2020-01-24 146023e3365SJerome Forissier 147023e3365SJerome Forissier[linaro_swg_optee_examples_release_3_8_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.8.0 148023e3365SJerome Forissier[linaro_swg_optee_examples_commits_3_8_0]: https://github.com/linaro-swg/optee_examples/compare/3.7.0...3.8.0 149023e3365SJerome Forissier[linaro_swg_optee_examples_pr_3_8_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2020-01-24 150023e3365SJerome Forissier 151a2fa5018SJoakim Bech# OP-TEE - version 3.7.0 (2019-10-18) 152a2fa5018SJoakim Bech 153a2fa5018SJoakim Bech- Links to the release pages, commits and pull requests merged into this release for: 154a2fa5018SJoakim Bech - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_7_0], [commits][OP_TEE_optee_os_commits_3_7_0] and [pull requests][OP_TEE_optee_os_pr_3_7_0] 155a2fa5018SJoakim Bech - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_7_0], [commits][OP_TEE_optee_client_commits_3_7_0] and [pull requests][OP_TEE_optee_client_pr_3_7_0] 156a2fa5018SJoakim Bech - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_7_0], [commits][OP_TEE_optee_test_commits_3_7_0] and [pull requests][OP_TEE_optee_test_pr_3_7_0] 157a2fa5018SJoakim Bech - OP-TEE/build: [release page][OP_TEE_build_release_3_7_0], [commits][OP_TEE_build_commits_3_7_0] and [pull requests][OP_TEE_build_pr_3_7_0] 158a2fa5018SJoakim Bech - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_7_0], [commits][linaro_swg_optee_examples_commits_3_7_0] and [pull requests][linaro_swg_optee_examples_pr_3_7_0] 159a2fa5018SJoakim Bech 160a2fa5018SJoakim Bech 161a2fa5018SJoakim Bech[OP_TEE_optee_os_release_3_7_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.7.0 162a2fa5018SJoakim Bech[OP_TEE_optee_os_commits_3_7_0]: https://github.com/OP-TEE/optee_os/compare/3.6.0...3.7.0 163a2fa5018SJoakim Bech[OP_TEE_optee_os_pr_3_7_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18 164a2fa5018SJoakim Bech 165a2fa5018SJoakim Bech[OP_TEE_optee_client_release_3_7_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.7.0 166a2fa5018SJoakim Bech[OP_TEE_optee_client_commits_3_7_0]: https://github.com/OP-TEE/optee_client/compare/3.6.0...3.7.0 167a2fa5018SJoakim Bech[OP_TEE_optee_client_pr_3_7_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18 168a2fa5018SJoakim Bech 169a2fa5018SJoakim Bech[OP_TEE_optee_test_release_3_7_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.7.0 170a2fa5018SJoakim Bech[OP_TEE_optee_test_commits_3_7_0]: https://github.com/OP-TEE/optee_test/compare/3.6.0...3.7.0 171a2fa5018SJoakim Bech[OP_TEE_optee_test_pr_3_7_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18 172a2fa5018SJoakim Bech 173a2fa5018SJoakim Bech[OP_TEE_build_release_3_7_0]: https://github.com/OP-TEE/build/releases/tag/3.7.0 174a2fa5018SJoakim Bech[OP_TEE_build_commits_3_7_0]: https://github.com/OP-TEE/build/compare/3.6.0...3.7.0 175a2fa5018SJoakim Bech[OP_TEE_build_pr_3_7_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18 176a2fa5018SJoakim Bech 177a2fa5018SJoakim Bech[linaro_swg_optee_examples_release_3_7_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.7.0 178a2fa5018SJoakim Bech[linaro_swg_optee_examples_commits_3_7_0]: https://github.com/linaro-swg/optee_examples/compare/3.6.0...3.7.0 179a2fa5018SJoakim Bech[linaro_swg_optee_examples_pr_3_7_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-07-05..2019-10-18 180a2fa5018SJoakim Bech 181f398d492SJerome Forissier# OP-TEE - version 3.6.0 (2019-07-05) 182f398d492SJerome Forissier 183f398d492SJerome Forissier- Link to the GitHub [release page][github_release_3_6_0]. 184f398d492SJerome Forissier- Links to the [commits][github_commits_3_6_0] and 185f398d492SJerome Forissier[pull requests][github_pr_3_6_0] merged into this release. 186f398d492SJerome Forissier 187f398d492SJerome Forissier[github_release_3_6_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.6.0 188f398d492SJerome Forissier[github_commits_3_6_0]: https://github.com/OP-TEE/optee_os/compare/3.5.0...3.6.0 189f398d492SJerome Forissier[github_pr_3_6_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-04-26..2019-07-05 190f398d492SJerome Forissier 1915df2a985SJoakim Bech# OP-TEE - version 3.5.0 (2019-04-26) 1925df2a985SJoakim Bech 1935df2a985SJoakim Bech- Link to the GitHub [release page][github_release_3_5_0]. 1945df2a985SJoakim Bech- Links to the [commits][github_commits_3_5_0] and 1955df2a985SJoakim Bech[pull requests][github_pr_3_5_0] merged into this release. 1965df2a985SJoakim Bech 1975df2a985SJoakim Bech[github_release_3_5_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.5.0 1985df2a985SJoakim Bech[github_commits_3_5_0]: https://github.com/OP-TEE/optee_os/compare/3.4.0...3.5.0 1995df2a985SJoakim Bech[github_pr_3_5_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2019-01-26..2019-04-26 2005df2a985SJoakim Bech 201406c609bSJerome Forissier# OP-TEE - version 3.4.0 (2019-01-25) 202406c609bSJerome Forissier 203406c609bSJerome Forissier- Link to the GitHub [release page][github_release_3_4_0]. 204406c609bSJerome Forissier- Links to the [commits][github_commits_3_4_0] and 205406c609bSJerome Forissier[pull requests][github_pr_3_4_0] merged into this release. 206406c609bSJerome Forissier 207406c609bSJerome Forissier[github_release_3_4_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.4.0 208406c609bSJerome Forissier[github_commits_3_4_0]: https://github.com/OP-TEE/optee_os/compare/3.3.0...3.4.0 209406c609bSJerome Forissier[github_pr_3_4_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2018-10-12..2019-01-25 210406c609bSJerome Forissier 211ee595e95SJerome Forissier# OP-TEE - version 3.3.0 (2018-10-12) 212ee595e95SJerome Forissier 213ee595e95SJerome Forissier- Link to the GitHub [release page][github_release_3_3_0]. 214ee595e95SJerome Forissier- Links to the [commits][github_commits_3_3_0] and 215ee595e95SJerome Forissier[pull requests][github_pr_3_3_0] merged into this release. 216ee595e95SJerome Forissier 217ee595e95SJerome Forissier[github_release_3_3_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.3.0 218ee595e95SJerome Forissier[github_commits_3_3_0]: https://github.com/OP-TEE/optee_os/compare/3.2.0...3.3.0 219ee595e95SJerome Forissier[github_pr_3_3_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2018-07-04..2018-10-12 220ee595e95SJerome Forissier 22153bf1c38SJerome Forissier# OP-TEE - version 3.2.0 (2018-07-04) 22253bf1c38SJerome Forissier 22353bf1c38SJerome Forissier- Link to the GitHub [release page][github_release_3_2_0]. 22453bf1c38SJerome Forissier- Links to the [commits][github_commits_3_2_0] and 22553bf1c38SJerome Forissier[pull requests][github_pr_3_2_0] merged into this release. 22653bf1c38SJerome Forissier 22753bf1c38SJerome Forissier## Known issues 22853bf1c38SJerome Forissier 22953bf1c38SJerome Forissier* HiKey960: assertion in bget create_free_block() \[memalign() self-test\] ([#2414]) 23053bf1c38SJerome Forissier* D02: assertion '!have_spinlock()' ([#2437]) 23153bf1c38SJerome Forissier 23253bf1c38SJerome Forissier[github_commits_3_2_0]: https://github.com/OP-TEE/optee_os/compare/3.1.0...3.2.0 23353bf1c38SJerome Forissier[github_pr_3_2_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2018-04-13..2018-07-04 23453bf1c38SJerome Forissier[github_release_3_2_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.2.0 23553bf1c38SJerome Forissier[#2414]: https://github.com/OP-TEE/optee_os/issues/2414 23653bf1c38SJerome Forissier[#2437]: https://github.com/OP-TEE/optee_os/issues/2437 23753bf1c38SJerome Forissier 2380ab9388cSJens Wiklander# OP-TEE - version 3.1.0 (2018-04-13) 2390ab9388cSJens Wiklander 2400ab9388cSJens Wiklander- Link to the GitHub [release page][github_release_3_1_0]. 2410ab9388cSJens Wiklander- Links to the [commits][github_commits_3_1_0] and 2420ab9388cSJens Wiklander[pull requests][github_pr_3_1_0] merged into this release. 2430ab9388cSJens Wiklander 2440ab9388cSJens Wiklander[github_commits_3_1_0]: https://github.com/OP-TEE/optee_os/compare/3.0.0...3.1.0 2450ab9388cSJens Wiklander[github_pr_3_1_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2018-01-26..2018-04-13 2460ab9388cSJens Wiklander[github_release_3_1_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.1.0 2470ab9388cSJens Wiklander 2480ab9388cSJens Wiklander# OP-TEE - version 3.0.0 (2018-01-26) 24994ee4938SJerome Forissier 25094ee4938SJerome Forissier[Link][github_commits_3_0_0] to a list of all commits between this release and 25194ee4938SJerome Forissierthe previous one (2.6.0). 25294ee4938SJerome Forissier 25394ee4938SJerome ForissierAbout backwards compatibility: Trusted Applications built with OP-TEE 2.5.0 or 25494ee4938SJerome Forissierearlier will not run properly with a *debug* build of this release due 25594ee4938SJerome Forissierto commit [0e1c6e8e][commit_0e1c6e8e] ("Dump call stack on TA panic"). 25694ee4938SJerome ForissierNon-debug builds are not affected. 25794ee4938SJerome Forissier 25894ee4938SJerome Forissier## New features 25994ee4938SJerome Forissier 26094ee4938SJerome Forissier* New supported platforms: Armada 3700 ([#1946]), Poplar ([#1999]), 64-bit 26194ee4938SJerome Forissier support for FSL ls1012ardb ([#1941]), i.MX6SX Sabreauto ([#1974]). 26294ee4938SJerome Forissier* arm32: sm: init CNTVOFF ([#2052]) 26394ee4938SJerome Forissier* Debug/info/error traces: make output more compact ([#2011]) 26494ee4938SJerome Forissier* tzc380: implement new functions ([#1994]) 26594ee4938SJerome Forissier* Secure Data Path: add pseudo-TA to convert VA to PA (#1993]) 26694ee4938SJerome Forissier* Pager: use NEON AES GCM implementation ([#1959]) 26794ee4938SJerome Forissier* Crypto: add optimized AES GCM implementation using NEON ([#1949]) 26894ee4938SJerome Forissier* Add support for using secure storage for TA anti-rollback ([#1928]) 26994ee4938SJerome Forissier* Crypto: replace struct crypto_ops with function interface ([#1923], 27094ee4938SJerome Forissier [#1931]) 27194ee4938SJerome Forissier* aosp_optee.mk: define OPTEE_BIN ([#1922]) 27294ee4938SJerome Forissier* Add build option to allow concurrent execution of single-instance TAs 27394ee4938SJerome Forissier ([#1915]) 27494ee4938SJerome Forissier* Pager: support for address sanitizer ([#1856]) 27594ee4938SJerome Forissier* Pager: make memory between CFG_TEE_RAM_START and TEE load address usable by 27694ee4938SJerome Forissier pager ([#1826]) 27794ee4938SJerome Forissier 27894ee4938SJerome Forissier## Bug fixes 27994ee4938SJerome Forissier 28094ee4938SJerome Forissier* Fix crash in tee_mmu_final() on TA loading error ([#2092]) 28194ee4938SJerome Forissier* LibTomCrypt: fix issue causing invalid output when using AES CTR with 28294ee4938SJerome Forissierhardware acceleration (CFG_CRYPTO_WITH_CE) ([#2086]) 28394ee4938SJerome Forissier* pl310: fix cache sync ([#2035]) 28494ee4938SJerome Forissier* tzc380: do not write reserved bits ([#1994]) 28594ee4938SJerome Forissier* Fix potential double free in ta_open() ([#1970]) 28694ee4938SJerome Forissier* libfdt: fix undefined behaviour in fdt_offset_ptr() ([#1969]) 28794ee4938SJerome Forissier* imx_wdog: fix register access ([#1966]) 28894ee4938SJerome Forissier* Secure storage: fix potential memory leak after early return ([#1961]) 28994ee4938SJerome Forissier* LibTomCrypt: fix double free in dsa_import() ([#1963]) 29094ee4938SJerome Forissier* RPMB: fix TA independance issue in secure storage ([#1921]) 29194ee4938SJerome Forissier* RPMB: return TEE_ERROR_ACCESS_CONFLICT instead of panicking when a TA 29294ee4938SJerome Forissier attempts to create an existing persistent object without the overwrite flag 29394ee4938SJerome Forissier ([#1919]) 29494ee4938SJerome Forissier* PSCI: pass non-secure context to psci_system_suspend() ([#1916]) 29594ee4938SJerome Forissier* Fix "Argument list too long" during "make clean" ([#1897]) 29694ee4938SJerome Forissier 29794ee4938SJerome Forissier## Security fixes 29894ee4938SJerome Forissier 29994ee4938SJerome Forissier* Mitigations and hardening against the Spectre and Meltdown vulnerabilities 30094ee4938SJerome Forissier (CVE-2017-5753, CVE-2017-5715, CVE-2017-5754). 30194ee4938SJerome Forissier 30294ee4938SJerome Forissier## Known issues 30394ee4938SJerome Forissier 30494ee4938SJerome Forissier* Secure storage (REE FS): storage size not updated after 30594ee4938SJerome ForissierTEE_TruncateObjectData() ([#2094]) 30694ee4938SJerome Forissier* Possible deadlock with CFG_WITH_PAGER=y when loading a TA and not enough 30794ee4938SJerome Forissierpage tables are available in pgt_cache ([#2080]) 30894ee4938SJerome Forissier 30994ee4938SJerome Forissier## Tested on 31094ee4938SJerome Forissier 31194ee4938SJerome ForissierThe release was tested successfully on the platforms listed below. 31294ee4938SJerome Forissier 31394ee4938SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 31494ee4938SJerome Forissier* d02 31594ee4938SJerome Forissier* hikey 31694ee4938SJerome Forissier* hikey-hikey960 31794ee4938SJerome Forissier* imx-mx6ulevk 31894ee4938SJerome Forissier* imx-mx7dsabresd 31994ee4938SJerome Forissier* marvell-armada7k8k 32094ee4938SJerome Forissier* marvell-armada3700 32194ee4938SJerome Forissier* mediatek-mt8173 32294ee4938SJerome Forissier* rcar-salvator_m3 32394ee4938SJerome Forissier* rockchip-rk322x 32494ee4938SJerome Forissier* rpi3 32594ee4938SJerome Forissier* sam 32694ee4938SJerome Forissier* ti 32794ee4938SJerome Forissier* vexpress-juno 32894ee4938SJerome Forissier* vexpress-qemu_armv8a 32994ee4938SJerome Forissier* vexpress-qemu_virt 33094ee4938SJerome Forissier 33194ee4938SJerome Forissier[commit_0e1c6e8e]: https://github.com/OP-TEE/optee_os/commit/0e1c6e8e 33294ee4938SJerome Forissier[github_commits_3_0_0]: https://github.com/OP-TEE/optee_os/compare/2.6.0...3.0.0 33394ee4938SJerome Forissier[#2092]: https://github.com/OP-TEE/optee_os/pull/2092 33494ee4938SJerome Forissier[#2086]: https://github.com/OP-TEE/optee_os/pull/2086 33594ee4938SJerome Forissier[#2094]: https://github.com/OP-TEE/optee_os/issues/2094 33694ee4938SJerome Forissier[#2080]: https://github.com/OP-TEE/optee_os/issues/2080 33794ee4938SJerome Forissier[#2052]: https://github.com/OP-TEE/optee_os/pull/2052 33894ee4938SJerome Forissier[#2035]: https://github.com/OP-TEE/optee_os/pull/2035 33994ee4938SJerome Forissier[#2011]: https://github.com/OP-TEE/optee_os/pull/2011 34094ee4938SJerome Forissier[#1999]: https://github.com/OP-TEE/optee_os/pull/1999 34194ee4938SJerome Forissier[#1994]: https://github.com/OP-TEE/optee_os/pull/1994 34294ee4938SJerome Forissier[#1993]: https://github.com/OP-TEE/optee_os/pull/1993 34394ee4938SJerome Forissier[#1974]: https://github.com/OP-TEE/optee_os/pull/1974 34494ee4938SJerome Forissier[#1970]: https://github.com/OP-TEE/optee_os/pull/1970 34594ee4938SJerome Forissier[#1969]: https://github.com/OP-TEE/optee_os/pull/1969 34694ee4938SJerome Forissier[#1966]: https://github.com/OP-TEE/optee_os/pull/1966 34794ee4938SJerome Forissier[#1963]: https://github.com/OP-TEE/optee_os/pull/1963 34894ee4938SJerome Forissier[#1961]: https://github.com/OP-TEE/optee_os/pull/1961 34994ee4938SJerome Forissier[#1959]: https://github.com/OP-TEE/optee_os/pull/1959 35094ee4938SJerome Forissier[#1949]: https://github.com/OP-TEE/optee_os/pull/1949 35194ee4938SJerome Forissier[#1946]: https://github.com/OP-TEE/optee_os/pull/1946 35294ee4938SJerome Forissier[#1941]: https://github.com/OP-TEE/optee_os/pull/1941 35394ee4938SJerome Forissier[#1931]: https://github.com/OP-TEE/optee_os/pull/1931 35494ee4938SJerome Forissier[#1928]: https://github.com/OP-TEE/optee_os/pull/1928 35594ee4938SJerome Forissier[#1923]: https://github.com/OP-TEE/optee_os/pull/1923 35694ee4938SJerome Forissier[#1922]: https://github.com/OP-TEE/optee_os/pull/1922 35794ee4938SJerome Forissier[#1921]: https://github.com/OP-TEE/optee_os/pull/1921 35894ee4938SJerome Forissier[#1919]: https://github.com/OP-TEE/optee_os/pull/1919 35994ee4938SJerome Forissier[#1916]: https://github.com/OP-TEE/optee_os/pull/1916 36094ee4938SJerome Forissier[#1915]: https://github.com/OP-TEE/optee_os/pull/1915 36194ee4938SJerome Forissier[#1897]: https://github.com/OP-TEE/optee_os/pull/1897 36294ee4938SJerome Forissier[#1856]: https://github.com/OP-TEE/optee_os/pull/1856 36394ee4938SJerome Forissier[#1826]: https://github.com/OP-TEE/optee_os/pull/1826 36494ee4938SJerome Forissier 3656d57389fSJerome Forissier# OP-TEE - version 2.6.0 3666d57389fSJerome Forissier 3676d57389fSJerome Forissier[Link][github_commits_2_6_0] to a list of all commits between this release and 3686d57389fSJerome Forissierthe previous one (2.5.0). 3696d57389fSJerome Forissier 3706d57389fSJerome Forissier## New features 3716d57389fSJerome Forissier 3726d57389fSJerome Forissier* New supported platforms: Atmel SAMA5 ([#1714]), HiSilicon HiKey960 ([#1684]), 3736d57389fSJerome Forissier Rockchip RK322X ([#1666]), NXP LS1043A-RDB/LS1046A-RDB ([#1787]), Marvell 3746d57389fSJerome Forissier Armada 70x0/80x0 ([#1807]). 3756d57389fSJerome Forissier* Dynamic shared memory (non-contiguous, non-secure memory can be mapped into 3766d57389fSJerome Forissier Trusted Applications VA space) ([#1631]) 3776d57389fSJerome Forissier* Dump TA call stack on panic ([#1858]) 3786d57389fSJerome Forissier* i.MX: PSCI reset ([#1849]) 3796d57389fSJerome Forissier* plat-ti: AM43xx: suspend/resume support ([#1822]) 3806d57389fSJerome Forissier* QEMU SMP support ([#1820]) 3816d57389fSJerome Forissier* plat-ti: AM43xx: disable TRNG ([#1816]) 3826d57389fSJerome Forissier* plat-ti: enable Secure Data Path by default ([#1815]) 3836d57389fSJerome Forissier* Improve symbolize.py ([#1778], [#1767], [#1766]) 3846d57389fSJerome Forissier* Early TAs (TAs linked in tee.bin) ([#1733]) 3856d57389fSJerome Forissier* Suspend/resume framework for arm32 and imx7d support ([#1729]) 3866d57389fSJerome Forissier* RK322X PSCI version, features and suspend support ([#1720]) 3876d57389fSJerome Forissier* arm32: handle aborts in system mode ([#1703]) 3886d57389fSJerome Forissier* i.MX: add SNVS SRTC support ([#1700]) 3896d57389fSJerome Forissier* GCC7 support ([#1693]) 3906d57389fSJerome Forissier* Improve detection of programming errors in locking code ([#1671], [#1670]) 3916d57389fSJerome Forissier* Support TEE RAM size larger than page directory size ([#1669]) 3926d57389fSJerome Forissier 3936d57389fSJerome Forissier## Removed features 3946d57389fSJerome Forissier 3956d57389fSJerome Forissier* Remove TUI code ([#1842]) 3966d57389fSJerome Forissier 3976d57389fSJerome Forissier## Bug fixes 3986d57389fSJerome Forissier 3996d57389fSJerome Forissier* Add missing synchronization barrier in core_mmu_map_pages() ([#1827]) 4006d57389fSJerome Forissier* Secure storage: REE FS: fix bug in error path ([#1801]) 4016d57389fSJerome Forissier* ASAN bug fixes ([#1799]) 4026d57389fSJerome Forissier* Fix race in core_mmu_user_mapping_is_active() ([#1785]) 4036d57389fSJerome Forissier* libutee: printf() and puts() fixes, add putchar() ([#1759], [#1754]) 4046d57389fSJerome Forissier* arm32: GICv3: fix FIQ masking in IRQ/ABT/SVC/UND handlers ([#1748]) 4056d57389fSJerome Forissier* arm32: preserve r12 in native_intr_handler() ([#1682]) 4066d57389fSJerome Forissier* arm64: fix print_kernel_stack() ([#1664]) 4076d57389fSJerome Forissier* benchmark: fix core data-abort ([#1658]) 4086d57389fSJerome Forissier 4096d57389fSJerome Forissier## Security fixes or enhancements 4106d57389fSJerome Forissier 4116d57389fSJerome Forissier* crypto: fix software PRNG weaknesses 4126d57389fSJerome Forissier ([OP-TEE-2017-0001][OP-TEE-2017-0001]) ([#1843]) 4136d57389fSJerome Forissier 4146d57389fSJerome Forissier## Tested on 4156d57389fSJerome Forissier 41694ee4938SJerome ForissierThe release was tested successfully on the platforms listed below. 4176d57389fSJerome ForissierIf a platform is not listed, it means the release was not tested on this 4186d57389fSJerome Forissierplatform. 4196d57389fSJerome Forissier 4206d57389fSJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 4216d57389fSJerome Forissier* d02 4226d57389fSJerome Forissier* hikey 4236d57389fSJerome Forissier* hikey-hikey960 4246d57389fSJerome Forissier* imx-mx6ulevk 4256d57389fSJerome Forissier* imx-mx7dsabresd 4266d57389fSJerome Forissier* ls-ls1021a??? (single core) 4276d57389fSJerome Forissier* ls-ls1043ardb 4286d57389fSJerome Forissier* ls-ls1046ardb 4296d57389fSJerome Forissier* mediatek-mt8173 4306d57389fSJerome Forissier* rcar 4316d57389fSJerome Forissier* rockchip-rk322x 4326d57389fSJerome Forissier* rpi3 4336d57389fSJerome Forissier* sam 4346d57389fSJerome Forissier* stm-b2260 4356d57389fSJerome Forissier* stm-cannes 4366d57389fSJerome Forissier* ti-??? 4376d57389fSJerome Forissier* vexpress-fvp 4386d57389fSJerome Forissier* vexpress-juno 4396d57389fSJerome Forissier* vexpress-qemu_armv8a 4406d57389fSJerome Forissier* vexpress-qemu_virt 4416d57389fSJerome Forissier 44294ee4938SJerome Forissier[github_commits_2_6_0]: https://github.com/OP-TEE/optee_os/compare/2.5.0...2.6.0 4436d57389fSJerome Forissier[#1858]: https://github.com/OP-TEE/optee_os/issues/1858 4446d57389fSJerome Forissier[#1849]: https://github.com/OP-TEE/optee_os/issues/1849 4456d57389fSJerome Forissier[#1843]: https://github.com/OP-TEE/optee_os/issues/1843 4466d57389fSJerome Forissier[#1842]: https://github.com/OP-TEE/optee_os/issues/1842 4476d57389fSJerome Forissier[#1827]: https://github.com/OP-TEE/optee_os/issues/1827 4486d57389fSJerome Forissier[#1822]: https://github.com/OP-TEE/optee_os/issues/1822 4496d57389fSJerome Forissier[#1820]: https://github.com/OP-TEE/optee_os/issues/1820 4506d57389fSJerome Forissier[#1816]: https://github.com/OP-TEE/optee_os/issues/1816 4516d57389fSJerome Forissier[#1815]: https://github.com/OP-TEE/optee_os/issues/1815 4526d57389fSJerome Forissier[#1807]: https://github.com/OP-TEE/optee_os/issues/1807 4536d57389fSJerome Forissier[#1801]: https://github.com/OP-TEE/optee_os/issues/1801 4546d57389fSJerome Forissier[#1799]: https://github.com/OP-TEE/optee_os/issues/1799 4556d57389fSJerome Forissier[#1787]: https://github.com/OP-TEE/optee_os/issues/1787 4566d57389fSJerome Forissier[#1785]: https://github.com/OP-TEE/optee_os/issues/1785 4576d57389fSJerome Forissier[#1778]: https://github.com/OP-TEE/optee_os/issues/1778 4586d57389fSJerome Forissier[#1767]: https://github.com/OP-TEE/optee_os/issues/1767 4596d57389fSJerome Forissier[#1766]: https://github.com/OP-TEE/optee_os/issues/1766 4606d57389fSJerome Forissier[#1759]: https://github.com/OP-TEE/optee_os/issues/1759 4616d57389fSJerome Forissier[#1754]: https://github.com/OP-TEE/optee_os/issues/1754 4626d57389fSJerome Forissier[#1748]: https://github.com/OP-TEE/optee_os/issues/1748 4636d57389fSJerome Forissier[#1733]: https://github.com/OP-TEE/optee_os/issues/1733 4646d57389fSJerome Forissier[#1729]: https://github.com/OP-TEE/optee_os/issues/1729 4656d57389fSJerome Forissier[#1720]: https://github.com/OP-TEE/optee_os/issues/1720 4666d57389fSJerome Forissier[#1714]: https://github.com/OP-TEE/optee_os/issues/1714 4676d57389fSJerome Forissier[#1703]: https://github.com/OP-TEE/optee_os/issues/1703 4686d57389fSJerome Forissier[#1700]: https://github.com/OP-TEE/optee_os/issues/1700 4696d57389fSJerome Forissier[#1693]: https://github.com/OP-TEE/optee_os/issues/1693 4706d57389fSJerome Forissier[#1684]: https://github.com/OP-TEE/optee_os/issues/1684 4716d57389fSJerome Forissier[#1682]: https://github.com/OP-TEE/optee_os/issues/1682 4726d57389fSJerome Forissier[#1671]: https://github.com/OP-TEE/optee_os/issues/1671 4736d57389fSJerome Forissier[#1670]: https://github.com/OP-TEE/optee_os/issues/1670 4746d57389fSJerome Forissier[#1669]: https://github.com/OP-TEE/optee_os/issues/1669 4756d57389fSJerome Forissier[#1666]: https://github.com/OP-TEE/optee_os/issues/1666 4766d57389fSJerome Forissier[#1664]: https://github.com/OP-TEE/optee_os/issues/1664 4776d57389fSJerome Forissier[#1658]: https://github.com/OP-TEE/optee_os/issues/1658 4786d57389fSJerome Forissier[#1631]: https://github.com/OP-TEE/optee_os/issues/1631 4796d57389fSJerome Forissier[OP-TEE-2017-0001]: https://www.op-tee.org/security-advisories/ 4806d57389fSJerome Forissier 4815d8aaa04SJerome Forissier# OP-TEE - version 2.5.0 4825d8aaa04SJerome Forissier 4835d8aaa04SJerome Forissier[Link][github_commits_2_5_0] to a list of all commits between this release and 4845d8aaa04SJerome Forissierthe previous one (2.4.0). 4855d8aaa04SJerome Forissier 4865d8aaa04SJerome Forissier## New features 4875d8aaa04SJerome Forissier 4885d8aaa04SJerome Forissier* New supported platform: i.MX7D ([#1639]) 4895d8aaa04SJerome Forissier* Secure storage: anti-rollback protection for REE FS using RPMB FS ([#1630]) 4905d8aaa04SJerome Forissier* Assign non-secure DDR configuration from DT if CFG_DT=y ([#1623]) 4915d8aaa04SJerome Forissier* Add new image format: split image into three separate binaries suitable for 4925d8aaa04SJerome Forissier upcoming ARM Trusted Firmware ([#1589]). 4935d8aaa04SJerome Forissier* Make alignment check configurable ([#1586]) 4945d8aaa04SJerome Forissier* drivers: add TZC380 driver ([#1578]) 4955d8aaa04SJerome Forissier* plat-imx: PSCI CPU off ([#1577]) 4965d8aaa04SJerome Forissier* 64-bit paging on QEMU v8 and HiKey ([#1575], [#1592]) 4975d8aaa04SJerome Forissier* Benchmark framework ([#1365]) 4985d8aaa04SJerome Forissier* Dump call stack of user TAs on abort ([#1552]) 4995d8aaa04SJerome Forissier* plat-hikey: enable Secure Data Path ([#1440]) 5005d8aaa04SJerome Forissier* Add interface to load and decrypt/authenticate user TAs ([#1513]) 5015d8aaa04SJerome Forissier* plat-ti: add secure paging support ([#1493]) 5025d8aaa04SJerome Forissier* plat-ti: add OTP hardware key support ([#1492]) 5035d8aaa04SJerome Forissier* Support ARM GICv3 ([#1465]) 5045d8aaa04SJerome Forissier 5055d8aaa04SJerome Forissier## Removed features 5065d8aaa04SJerome Forissier 5075d8aaa04SJerome Forissier* stm-orly2 is not supported anymore ([#1650]) 5085d8aaa04SJerome Forissier* Remove secure storage based on SQL FS (`CFG_SQL_FS=y`) ([#1490]) 5095d8aaa04SJerome Forissier* Remove support for mapping user TAs with 1 MiB or 2 MiB granularity 5105d8aaa04SJerome Forissier (`CFG_SMALL_PAGE_USER_TA=n`) ([#1559]). TAs are always mapped using small 5115d8aaa04SJerome Forissier pages. 5125d8aaa04SJerome Forissier 5135d8aaa04SJerome Forissier## Bug fixes 5145d8aaa04SJerome Forissier 5155d8aaa04SJerome Forissier* Reduce size of non-pageable code ([#1621]) 5165d8aaa04SJerome Forissier* Ignore `TA_FLAG_MULTI_SESSION` and `TA_FLAG_INSTANCE_KEEP_ALIVE` when 5175d8aaa04SJerome Forissier `TA_FLAG_SINGLE_INSTANCE` is not set ([#1574]) 5185d8aaa04SJerome Forissier* libutee: remove buffering for AES GCM (PR#1573) and AES CTR ([#1580]) 5195d8aaa04SJerome Forissier* Fix ROUNDUP()/ROUNDDOWN() macros ([#1519]) 5205d8aaa04SJerome Forissier* Do not touch other bits in GICD_CTLR ([#1508]) 5215d8aaa04SJerome Forissier* Fix build issue with `DEBUG=y` and `CFG_TEE_CORE_LOG_LEVEL=0` ([#1502]) 5225d8aaa04SJerome Forissier* crypto: do not restrict hash size when algorithm is ECDSA ([#1497]) 5235d8aaa04SJerome Forissier 5245d8aaa04SJerome Forissier## Security fixes or enhancements 5255d8aaa04SJerome Forissier 5265d8aaa04SJerome Forissier- crypto: fix RSA key leakage after fault injection attack 5275d8aaa04SJerome Forissier ([OP-TEE-2016-0003][OP-TEE-2016-0003]) ([#1610]) 5285d8aaa04SJerome Forissier* crypto: fix RSA key leakage after side channel attack 5295d8aaa04SJerome Forissier ([OP-TEE-2016-0002][OP-TEE-2016-0002]) ([#1610]) 5305d8aaa04SJerome Forissier* Make pager aliased pages not always writable ([#1551]) 5315d8aaa04SJerome Forissier* Support for no-exec RO and RW data ([#1459], [#1550]) 5325d8aaa04SJerome Forissier 5335d8aaa04SJerome Forissier## New issues 5345d8aaa04SJerome Forissier 5355d8aaa04SJerome Forissier* armv7: some platform-specific code (`plat_cpu_reset_early()`) overwrites 5365d8aaa04SJerome ForissierSCTLR bits configured by generic code. This affects alignment checks (`SCTLR.A`) 5375d8aaa04SJerome Forissierand write-implies-no-exec (`SCTLR.WXN`, `SCTLR.UWXN`), which can therefore not 5385d8aaa04SJerome Forissierbe configured via the compile-time `CFG_` variables. 5395d8aaa04SJerome Forissier* armv7: plat-imx: Cortex-A9 cores should enable branch prediction (`SCLTR.Z`) 5405d8aaa04SJerome Forissierfor improved performance. 5415d8aaa04SJerome Forissier* [#1656] qemu_armv8a: init hangs when secure data path and pager are both 5425d8aaa04SJerome Forissier enabled. 5435d8aaa04SJerome Forissier 5445d8aaa04SJerome Forissier## Tested on 5455d8aaa04SJerome Forissier 5465d8aaa04SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with 5475d8aaa04SJerome Forissierits default configuration, while _extended_ means it was run successfully 5485d8aaa04SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite 5495d8aaa04SJerome Forissierv1.1.0.4. 5505d8aaa04SJerome Forissier 5515d8aaa04SJerome ForissierIf a platform is not listed, it means the release was not tested on this 5525d8aaa04SJerome Forissierplatform. 5535d8aaa04SJerome Forissier 5545d8aaa04SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 5555d8aaa04SJerome Forissier* d02: extended 5565d8aaa04SJerome Forissier* hikey: extended 5575d8aaa04SJerome Forissier* imx-mx6ulevk: standard 5585d8aaa04SJerome Forissier* imx-mx6ullevk: standard 5595d8aaa04SJerome Forissier* imx-mx7dsabresd: standard 5605d8aaa04SJerome Forissier* ls-ls1021atwr: standard 5615d8aaa04SJerome Forissier* mediatek-mt8173: standard 5625d8aaa04SJerome Forissier* rcar-h3: standard 5635d8aaa04SJerome Forissier* rpi3: standard 5645d8aaa04SJerome Forissier* stm-b2260: extended 5655d8aaa04SJerome Forissier* stm-cannes: extended 5665d8aaa04SJerome Forissier* ti-am43xx: standard 5675d8aaa04SJerome Forissier* ti-am57xx: standard 5685d8aaa04SJerome Forissier* ti-dra7xx: standard 5695d8aaa04SJerome Forissier* vexpress-fvp: standard 5705d8aaa04SJerome Forissier* vexpress-juno: standard 5715d8aaa04SJerome Forissier* vexpress-qemu_armv8a: standard 5725d8aaa04SJerome Forissier* vexpress-qemu_virt: standard 5735d8aaa04SJerome Forissier 5745d8aaa04SJerome Forissier[github_commits_2_5_0]: https://github.com/OP-TEE/optee_os/compare/2.4.0...2.5.0-rc1 5755d8aaa04SJerome Forissier[#1656]: https://github.com/OP-TEE/optee_os/issues/1656 5765d8aaa04SJerome Forissier[#1650]: https://github.com/OP-TEE/optee_os/pull/1650 5775d8aaa04SJerome Forissier[#1639]: https://github.com/OP-TEE/optee_os/pull/1639 5785d8aaa04SJerome Forissier[#1630]: https://github.com/OP-TEE/optee_os/pull/1630 5795d8aaa04SJerome Forissier[#1623]: https://github.com/OP-TEE/optee_os/pull/1623 5805d8aaa04SJerome Forissier[#1621]: https://github.com/OP-TEE/optee_os/pull/1621 5815d8aaa04SJerome Forissier[#1610]: https://github.com/OP-TEE/optee_os/pull/1610 5825d8aaa04SJerome Forissier[#1592]: https://github.com/OP-TEE/optee_os/pull/1592 5835d8aaa04SJerome Forissier[#1589]: https://github.com/OP-TEE/optee_os/pull/1589 5845d8aaa04SJerome Forissier[#1586]: https://github.com/OP-TEE/optee_os/pull/1586 5855d8aaa04SJerome Forissier[#1580]: https://github.com/OP-TEE/optee_os/pull/1580 5865d8aaa04SJerome Forissier[#1578]: https://github.com/OP-TEE/optee_os/pull/1578 5875d8aaa04SJerome Forissier[#1577]: https://github.com/OP-TEE/optee_os/pull/1577 5885d8aaa04SJerome Forissier[#1574]: https://github.com/OP-TEE/optee_os/pull/1574 5895d8aaa04SJerome Forissier[#1559]: https://github.com/OP-TEE/optee_os/pull/1559 5905d8aaa04SJerome Forissier[#1551]: https://github.com/OP-TEE/optee_os/pull/1551 5915d8aaa04SJerome Forissier[#1550]: https://github.com/OP-TEE/optee_os/pull/1550 5925d8aaa04SJerome Forissier[#1519]: https://github.com/OP-TEE/optee_os/pull/1519 5935d8aaa04SJerome Forissier[#1502]: https://github.com/OP-TEE/optee_os/pull/1502 5945d8aaa04SJerome Forissier[#1365]: https://github.com/OP-TEE/optee_os/pull/1365 5955d8aaa04SJerome Forissier[#1552]: https://github.com/OP-TEE/optee_os/pull/1552 5965d8aaa04SJerome Forissier[#1513]: https://github.com/OP-TEE/optee_os/pull/1513 5975d8aaa04SJerome Forissier[#1508]: https://github.com/OP-TEE/optee_os/pull/1508 5985d8aaa04SJerome Forissier[#1493]: https://github.com/OP-TEE/optee_os/pull/1493 5995d8aaa04SJerome Forissier[#1497]: https://github.com/OP-TEE/optee_os/pull/1497 6005d8aaa04SJerome Forissier[#1492]: https://github.com/OP-TEE/optee_os/pull/1492 6015d8aaa04SJerome Forissier[#1490]: https://github.com/OP-TEE/optee_os/pull/1490 6025d8aaa04SJerome Forissier[#1465]: https://github.com/OP-TEE/optee_os/pull/1465 6035d8aaa04SJerome Forissier[#1459]: https://github.com/OP-TEE/optee_os/pull/1459 6045d8aaa04SJerome Forissier[#1440]: https://github.com/OP-TEE/optee_os/pull/1440 6055d8aaa04SJerome Forissier[OP-TEE-2016-0003]: https://www.op-tee.org/security-advisories/ 6065d8aaa04SJerome Forissier[OP-TEE-2016-0002]: https://www.op-tee.org/security-advisories/ 6075d8aaa04SJerome Forissier 608702609a7SJerome Forissier# OP-TEE - version 2.4.0 609702609a7SJerome Forissier 610702609a7SJerome Forissier[Link][github_commits_2_4_0] to a list of all commits between this release and 611702609a7SJerome Forissierthe previous one (2.3.0). 612702609a7SJerome Forissier 613702609a7SJerome ForissierPlease note: this release is API-compatible with the previous one, but the 614702609a7SJerome ForissierSecure Storage internal format for the REE and SQL FS is not compatible due to 615702609a7SJerome Forissiercommits [a238b74][commit_a238b74] ("core: REE FS: use the new hash tree 616702609a7SJerome Forissierinterface") and [44e900e][commit_44e900e] ("core: SQL FS: use the new hash tree 617702609a7SJerome Forissierinterface"). 618702609a7SJerome Forissier 619702609a7SJerome Forissier## New features 620702609a7SJerome Forissier 621702609a7SJerome Forissier* Add porting guidelines 622702609a7SJerome Forissier 623702609a7SJerome Forissier* Add support for Secure Data Path which allows Client and Trusted Applications 624702609a7SJerome Forissier to share references to secure memory 625702609a7SJerome Forissier 626702609a7SJerome Forissier* New supported platform: Texas Instruments AM57xx (`PLATFORM=ti-am57xx`) 627702609a7SJerome Forissier 628702609a7SJerome Forissier* ARMv7-A: add support for platform services in secure monitor and add these 629702609a7SJerome Forissier services for the DRA7xx platform 630702609a7SJerome Forissier 631702609a7SJerome Forissier* SPI framework and PL022 driver cleanup and improvements 632702609a7SJerome Forissier 633702609a7SJerome Forissier* Use CNTPCT (when available) to add entropy to the software PRNG 634702609a7SJerome Forissier 635702609a7SJerome Forissier* Add GlobalPlatform Socket API for UDP and TCP (IPv4 and IPv6) 636702609a7SJerome Forissier 637702609a7SJerome Forissier* DRA7: add TRNG driver, enable GICv2 driver 638702609a7SJerome Forissier 639702609a7SJerome Forissier* Support load address larger than 4G 640702609a7SJerome Forissier 641702609a7SJerome Forissier* libutee: preserve error code when calling TEE_Panic() for easier 642702609a7SJerome Forissier troubleshooting 643702609a7SJerome Forissier 644702609a7SJerome Forissier* Support TA profiling with gprof (-pg compiler switch) 645702609a7SJerome Forissier 646702609a7SJerome Forissier* Optimize the ELF loader for TAs when pager is enabled 647702609a7SJerome Forissier 648702609a7SJerome Forissier* Update documentation 649702609a7SJerome Forissier 650702609a7SJerome Forissier* Add paged secure shared memory that can be transferred between TAs as 651702609a7SJerome Forissier needed 652702609a7SJerome Forissier 653702609a7SJerome Forissier* Introduce MOBJ abstraction 654702609a7SJerome Forissier 655702609a7SJerome Forissier* i.MX6: add PSCI "on" function 656702609a7SJerome Forissier 657702609a7SJerome Forissier* arm32: introduce PSCI framework 658702609a7SJerome Forissier 659702609a7SJerome Forissier## Bug fixes 660702609a7SJerome Forissier 661702609a7SJerome Forissier* Secure storage: improve integrity checking of the REE and SQL filesystems by 662702609a7SJerome Forissier adding a hash tree on the internal data structures. Any external modification 663702609a7SJerome Forissier is detected, except full rollback. Fixes [#1188][issue1188]. 664702609a7SJerome Forissier 665702609a7SJerome Forissier* The linux driver will set the 'privileged' flag (TEE_GEN_CAP_PRIVILEGED) on 666702609a7SJerome Forissier the device intended for use by tee-supplicant. Fixes [#1199][issue1199]. 667702609a7SJerome Forissier 668702609a7SJerome Forissier* RPMB: don't try to program the RPMB key by default 669702609a7SJerome Forissier 670702609a7SJerome Forissier* Fix "make clean" error cases 671702609a7SJerome Forissier 672702609a7SJerome Forissier* Fix issue when resetting persistent storage enumerator [#1332][issue1332] 673702609a7SJerome Forissier 674702609a7SJerome Forissier* Fix TA panic when doing AES CTS with specific buffer sizes 675702609a7SJerome Forissier [#1203][issue1203]. 676702609a7SJerome Forissier 677702609a7SJerome Forissier## Known issues 678702609a7SJerome Forissier 679702609a7SJerome Forissier* On RPi3 xtest sometimes stall (rcu_sched self-detected stall on CPU) [#1353][issue1353] 680702609a7SJerome Forissier* For multi-core PSCI support is to be added for ls1021atwr in OP-TEE. 681702609a7SJerome Forissier* USB keyboard cannot be used to stop the u-boot timeout ([build issue131]). 682702609a7SJerome Forissier* Travis service (build.git) seems unstable from time to time. 683702609a7SJerome Forissier 684702609a7SJerome Forissier## Tested on 685702609a7SJerome Forissier 686702609a7SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with 687702609a7SJerome Forissierits default configuration, while _extended_ means it was run successfully 688702609a7SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite 689702609a7SJerome Forissierv1.1.0.4. 690702609a7SJerome Forissier 691702609a7SJerome ForissierIf a platform is not listed, it means the release was not tested on this 692702609a7SJerome Forissierplatform. 693702609a7SJerome Forissier 694702609a7SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 695702609a7SJerome Forissier* d02: extended 696702609a7SJerome Forissier* hikey: extended 697702609a7SJerome Forissier* imx-mx6ulevk: standard 698702609a7SJerome Forissier* ls-ls1021atwr: standard (single core) 699702609a7SJerome Forissier* mediatek-mt8173: standard 700702609a7SJerome Forissier* rcar-h3: standard 701702609a7SJerome Forissier* rpi3: standard 702702609a7SJerome Forissier* stm-b2260: extended 703702609a7SJerome Forissier* ti-dra7xx: standard 704702609a7SJerome Forissier* vexpress-fvp: standard 705702609a7SJerome Forissier* vexpress-juno: standard 706702609a7SJerome Forissier* vexpress-qemu_armv8a: standard 707702609a7SJerome Forissier* vexpress-qemu_virt: standard 708702609a7SJerome Forissier* zynqmp-zc1751_dc1: standard 709702609a7SJerome Forissier* zynqmp-zc1751_dc2: standard 710702609a7SJerome Forissier* zynqmp-zcu102: standard 711702609a7SJerome Forissier 712702609a7SJerome Forissier[github_commits_2_4_0]: https://github.com/OP-TEE/optee_os/compare/2.3.0...2.4.0 713702609a7SJerome Forissier[issue1332]: https://github.com/OP-TEE/optee_os/issues/1332 714702609a7SJerome Forissier[issue1353]: https://github.com/OP-TEE/optee_os/issues/1353 715702609a7SJerome Forissier[build issue131]: https://github.com/OP-TEE/build/issues/131 716702609a7SJerome Forissier[commit_a238b74]: https://github.com/OP-TEE/optee_os/commit/a238b744b1b3 717702609a7SJerome Forissier[commit_44e900e]: https://github.com/OP-TEE/optee_os/commit/44e900eabfc1 718702609a7SJerome Forissier 71928fcee17SJerome Forissier# OP-TEE - version 2.3.0 72028fcee17SJerome Forissier 72128fcee17SJerome Forissier[Link][github_commits_2_3_0] to a list of all commits between this release and 72228fcee17SJerome Forissierthe previous one (2.2.0). 72328fcee17SJerome Forissier 72428fcee17SJerome ForissierPlease note: this release is API-compatible with the previous one, but the 72528fcee17SJerome ForissierSecure Storage internal format for the REE FS is not compatible due to commit 72628fcee17SJerome Forissier[361fb3e][commit_361fb3e] ("core: REE FS: use a single file per object"). 72728fcee17SJerome Forissier 72828fcee17SJerome Forissier[commit_361fb3e]: https://github.com/OP-TEE/optee_os/commit/361fb3e 72928fcee17SJerome Forissier 73028fcee17SJerome Forissier## New features 73128fcee17SJerome Forissier 73228fcee17SJerome Forissier* New supported platform: Xilinx Zynq 7000 ZC702 (`PLATFORM=zynq7k-zc702`) 73328fcee17SJerome Forissier 73428fcee17SJerome Forissier* Add debug assertions to spinlocks and mutexes 73528fcee17SJerome Forissier 73628fcee17SJerome Forissier* Add more CP15 register access macros for Cortex-A9 73728fcee17SJerome Forissier 73828fcee17SJerome Forissier* ARMv7-A: redesign secure monitor to make it easier to register services 73928fcee17SJerome Forissier 74028fcee17SJerome Forissier* ARMv7-A: cleanup boot arguments 74128fcee17SJerome Forissier 74228fcee17SJerome Forissier* libutee: extend `TEE_CheckMemoryAccessRights()` with 74328fcee17SJerome Forissier `TEE_MEMORY_ACCESS_SECURE` and `TEE_MEMORY_ACCESS_NONSECURE` 74428fcee17SJerome Forissier 74528fcee17SJerome Forissier* plat-hikey: enable SPI by default and add sample test code 74628fcee17SJerome Forissier 74728fcee17SJerome Forissier* Consider `CFLAGS_ta_arm64` and `CFLAGS_ta_arm32` when building TAs 74828fcee17SJerome Forissier 74928fcee17SJerome Forissier* Secure storage refactoring 75028fcee17SJerome Forissier - Simplify interface with tee-supplicant. Minimize round trips with normal 75128fcee17SJerome Forissier world, especially by adding a cache for FS RPC payload data. 75228fcee17SJerome Forissier - REE FS: use a single file per object, remove block cache. 75328fcee17SJerome Forissier 75428fcee17SJerome Forissier* Print call stack in panic() 75528fcee17SJerome Forissier 75628fcee17SJerome Forissier## Bug fixes 75728fcee17SJerome Forissier 75828fcee17SJerome Forissier* Fix UUID encoding when communicating with normal world (use big endian 75928fcee17SJerome Forissier mode instead of native endianness). Related to this, the string format 76028fcee17SJerome Forissier for UUIDs has changed in tee-supplicant, so that TA file names now follow 76128fcee17SJerome Forissier the format defined in RFC4122 (a missing hyphen was added). The old format 76228fcee17SJerome Forissier is still supported, but deprecated, and will likely be removed with the 76328fcee17SJerome Forissier next major release. 76428fcee17SJerome Forissier 76528fcee17SJerome Forissier* Drop write permission to non-writable ELF segments after TA loading is 76628fcee17SJerome Forissier complete. 76728fcee17SJerome Forissier 76828fcee17SJerome Forissier* mm: fix confusing memory mapping debug traces 76928fcee17SJerome Forissier 77028fcee17SJerome Forissier* plat-ti: fix issues with MMU mapping 77128fcee17SJerome Forissier 77228fcee17SJerome Forissier* crypto: fix clearing of big numbers 77328fcee17SJerome Forissier 77428fcee17SJerome Forissier* build: allow spaces and double quotes in CFG_ variables 77528fcee17SJerome Forissier 77628fcee17SJerome Forissier* mm: use paddr_t to support both 32- and 64-bit architectures properly. 77728fcee17SJerome Forissier Resolves 32-bit truncation error when pool is at top of 32 bit address 77828fcee17SJerome Forissier space on 64-bit architecture. 77928fcee17SJerome Forissier 78028fcee17SJerome Forissier* plat-stm: support pager. Fix pager on ARMv7-A SMP boards. 78128fcee17SJerome Forissier 78228fcee17SJerome Forissier* Fix debug output of Trusted Applications (remove "ERROR: TEE-CORE:" prefix) 78328fcee17SJerome Forissier 78428fcee17SJerome Forissier* Do not consider TA memref parameters as TA private memory 78528fcee17SJerome Forissier 78628fcee17SJerome Forissier* crypto: fix `cipher_final()` which would not call `cbc_done()` for CBC_MAC 78728fcee17SJerome Forissier algorithms 78828fcee17SJerome Forissier 78928fcee17SJerome Forissier* fix for 16-way PL310 79028fcee17SJerome Forissier 79128fcee17SJerome Forissier* arm32: fix call stack unwinding (`print_stack()`) 79228fcee17SJerome Forissier 79328fcee17SJerome Forissier* arm32: fix spinlock assembly code 79428fcee17SJerome Forissier 79528fcee17SJerome Forissier* plat-stm, plat-imx: fix SCR initalization 79628fcee17SJerome Forissier 79728fcee17SJerome Forissier* Fix user L1 MMU entries calculation (non-LPAE), allowing TTBCR.N values 79828fcee17SJerome Forissier other than 7. 79928fcee17SJerome Forissier 80028fcee17SJerome Forissier* mtk-mt8173: fix panic caused by incorrect size of SHMEM 80128fcee17SJerome Forissier 80228fcee17SJerome Forissier* plat-stm: fix RNG driver (non-flat mapping) 80328fcee17SJerome Forissier 80428fcee17SJerome Forissier## Known issues 80528fcee17SJerome Forissier 80628fcee17SJerome Forissier* New issues open on GitHub 80728fcee17SJerome Forissier * [#1203][issue1203] AES-CTS mode will fail when inlen=0x100, in_incr=0x80 80828fcee17SJerome Forissier * [#1199][issue1199] Both tee and teepriv reported GlobalPlatform compliant 80928fcee17SJerome Forissier * [#1188][issue1188] Secure storage (SQL FS and REE FS): blocks not tied to 81028fcee17SJerome Forissier current meta header 81128fcee17SJerome Forissier * [#1172][issue1172] paddr_t should be larger than 32 bits when 81228fcee17SJerome Forissier CFG_WITH_LPAE is enabled 81328fcee17SJerome Forissier 81428fcee17SJerome Forissier## Tested on 81528fcee17SJerome Forissier 81628fcee17SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with 81728fcee17SJerome Forissierits default configuration, while _extended_ means it was run successfully 81828fcee17SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite 81928fcee17SJerome Forissierv1.1.0.4. 82028fcee17SJerome Forissier 82128fcee17SJerome ForissierIf a platform is not listed, it means the release was not tested on this 82228fcee17SJerome Forissierplatform. 82328fcee17SJerome Forissier 82428fcee17SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 82528fcee17SJerome Forissier* d02: extended 82628fcee17SJerome Forissier* hikey: extended 82728fcee17SJerome Forissier* imx-mx6ulevk: standard 82828fcee17SJerome Forissier* ls-ls1021atwr: standard 82928fcee17SJerome Forissier* mediatek-mt8173: standard 83028fcee17SJerome Forissier* rcar-h3: standard 83128fcee17SJerome Forissier* rpi3: standard 83228fcee17SJerome Forissier* stm-b2260: extended 83328fcee17SJerome Forissier* stm-cannes: extended 83428fcee17SJerome Forissier* ti-dra7xx: standard 83528fcee17SJerome Forissier* vexpress-fvp: standard 83628fcee17SJerome Forissier* vexpress-juno: standard 83728fcee17SJerome Forissier* vexpress-qemu_armv8a: standard 83828fcee17SJerome Forissier* vexpress-qemu_virt: extended 83928fcee17SJerome Forissier* zynqmp-zcu102: standard 84028fcee17SJerome Forissier 84128fcee17SJerome Forissier[github_commits_2_3_0]: https://github.com/OP-TEE/optee_os/compare/2.2.0...2.3.0 84228fcee17SJerome Forissier[issue1172]: https://github.com/OP-TEE/optee_os/issues/1172 84328fcee17SJerome Forissier[issue1188]: https://github.com/OP-TEE/optee_os/issues/1188 84428fcee17SJerome Forissier[issue1199]: https://github.com/OP-TEE/optee_os/issues/1199 84528fcee17SJerome Forissier[issue1203]: https://github.com/OP-TEE/optee_os/issues/1203 84628fcee17SJerome Forissier 847c0c5d399SJerome Forissier# OP-TEE - version 2.2.0 848c0c5d399SJerome Forissier 849c0c5d399SJerome Forissier[Link][github_commits_2_2_0] to a list of all commits between this release and 850c0c5d399SJerome Forissierthe previous one (2.1.0). 851c0c5d399SJerome Forissier 852c0c5d399SJerome ForissierPlease note: this release is API-compatible with the previous one, but the 853c0c5d399SJerome ForissierSecure Storage internal format is not compatible due to commit 854c0c5d399SJerome Forissier[fde4a75][commit_fde4a75] ("storage: encrypt the FEK with a TA-specific key"). 855c0c5d399SJerome Forissier 856c0c5d399SJerome Forissier[commit_fde4a75]: https://github.com/OP-TEE/optee_os/commit/fde4a75 857c0c5d399SJerome Forissier 858c0c5d399SJerome Forissier## New features 859c0c5d399SJerome Forissier 860c0c5d399SJerome Forissier* New supported platforms: 861c0c5d399SJerome Forissier * Freescale i.MX6 Quad SABRE Lite & SD 862c0c5d399SJerome Forissier * HiSilicon D02 863c0c5d399SJerome Forissier * Raspberry Pi3 864c0c5d399SJerome Forissier * Renesas RCAR H3 865c0c5d399SJerome Forissier * STMicroelectronics b2260 - h410 866c0c5d399SJerome Forissier 867c0c5d399SJerome Forissier* Pager: Support paging of read/write pages by encrypting them with AES-GCM. 868c0c5d399SJerome Forissier Support paging of user TAs. Add global setting for TZSRAM size 869c0c5d399SJerome Forissier (CFG_CORE_TZSRAM_EMUL_SIZE), defaults to 300K. 870c0c5d399SJerome Forissier 871c0c5d399SJerome Forissier* Support for more than 8 CPU cores 872c0c5d399SJerome Forissier 873c0c5d399SJerome Forissier* Added SPI framework and PL022 driver 874c0c5d399SJerome Forissier 875c0c5d399SJerome Forissier* GPIO: framework supports multiple instances, PL061 driver now has get/set 876c0c5d399SJerome Forissier interrupt and mode control functions 877c0c5d399SJerome Forissier 878c0c5d399SJerome Forissier* Secure storage: Encrypt the File Encryption Key with a TA-specific key for 879c0c5d399SJerome Forissier better TA isolation. Add build-time and run-time support for multiple storage 880c0c5d399SJerome Forissier backends. Add SQLite backend. 881c0c5d399SJerome Forissier 882c0c5d399SJerome Forissier* Trusted User Interface: some code is introduced to support the implementation 883c0c5d399SJerome Forissier of TUI. This includes: a generic framebuffer driver, display and serial 884c0c5d399SJerome Forissier abstractions, and drivers for PL111 (LCD) / PL050 (KMI) / TZC400 and PS2 885c0c5d399SJerome Forissier mouse. 886c0c5d399SJerome Forissier 887c0c5d399SJerome Forissier* AES acceleration using ARMv8-A Cryptographic Extensions instructions is 888c0c5d399SJerome Forissier now supported in AArch32 mode 889c0c5d399SJerome Forissier 890c0c5d399SJerome Forissier* Add support for GCC flags: -fsanitize=undefined and -fsanitize=kernel-address 891c0c5d399SJerome Forissier 892c0c5d399SJerome Forissier* Use a global setting for core heap size (CFG_CORE_HEAP_SIZE), 64K by default. 893c0c5d399SJerome Forissier 894c0c5d399SJerome Forissier* Add macros to unwind and print the call stack of TEE core 895c0c5d399SJerome Forissier 896c0c5d399SJerome Forissier* Libtomcrypt: sync with the latest `develop` branch. 897c0c5d399SJerome Forissier 898c0c5d399SJerome Forissier* The Trusted Application SDK (ta_dev_kit.mk) can produce libraries (.a) 899c0c5d399SJerome Forissier 900c0c5d399SJerome Forissier* Rework assertions and TEE core panics and properly honor NDEBUG 901c0c5d399SJerome Forissier 902c0c5d399SJerome Forissier## Bug fixes 903c0c5d399SJerome Forissier 904c0c5d399SJerome Forissier* Fix incorrect algorithm passed to cipher.final() 905c0c5d399SJerome Forissier 906c0c5d399SJerome Forissier* scripts: support Python 2.x and 3.x 907c0c5d399SJerome Forissier 908c0c5d399SJerome Forissier* Secure storage: Add proper locking to support concurrent access. Fix sign 909c0c5d399SJerome Forissier extension bug with offset parameter of syscall storage_obj_seek which could 910c0c5d399SJerome Forissier cause errors in Aarch32 mode. Fix reading beyond end of file. 911c0c5d399SJerome Forissier 912c0c5d399SJerome Forissier* Aarch64: mask all maskable exceptions before doing a normal return from call. 913c0c5d399SJerome Forissier 914c0c5d399SJerome Forissier* Device Tree: add no-map property to OP-TEE node in reserved-memory. 915c0c5d399SJerome Forissier 916c0c5d399SJerome Forissier* LibTomcrypt: fix CVE-2016-6129 917c0c5d399SJerome Forissier 918c0c5d399SJerome Forissier## Known issues 919c0c5d399SJerome Forissier 920c0c5d399SJerome Forissier* New issues open on GitHub 921c0c5d399SJerome Forissier * [#1093][issue1093] rcar-h3: xtest 6010 hangs 922c0c5d399SJerome Forissier * [#1092][issue1092] rcar-h3: xtest 4010 fails 923c0c5d399SJerome Forissier * [#1081][issue1081] Bad mapping of TA secure memref parameters 924c0c5d399SJerome Forissier * [#1071][issue1071] __data_end may not correctly represent text start position when using CFG_WITH_PAGER 925c0c5d399SJerome Forissier * [#1069][issue1069] armv7/Aarch32: crash in stack unwind (DPRINT_STACK()) 926c0c5d399SJerome Forissier 927c0c5d399SJerome Forissier## Tested on 928c0c5d399SJerome Forissier 929c0c5d399SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with 930c0c5d399SJerome Forissierits default configuration, while _extended_ means it was run successfully 931c0c5d399SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite 932c0c5d399SJerome Forissierv1.1.0.4. 933c0c5d399SJerome Forissier 934c0c5d399SJerome ForissierIf a platform is not listed, it means the release was not tested on this 935c0c5d399SJerome Forissierplatform. 936c0c5d399SJerome Forissier 937c0c5d399SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 938c0c5d399SJerome Forissier* d02: extended 939c0c5d399SJerome Forissier* hikey: extended 940c0c5d399SJerome Forissier* imx-mx6qsabrelite: standard 941c0c5d399SJerome Forissier* imx-mx6qsabresd: standard 942c0c5d399SJerome Forissier* rcar-h3: standard, pass except issues [#1092][issue1092] and [#1093][issue1093] 943c0c5d399SJerome Forissier* rpi3: standard 944c0c5d399SJerome Forissier* stm-b2260: standard 945c0c5d399SJerome Forissier* stm-cannes: standard 946c0c5d399SJerome Forissier* ti-dra7xx: standard 947c0c5d399SJerome Forissier* vexpress-fvp: standard 948c0c5d399SJerome Forissier* vexpress-juno: standard 949c0c5d399SJerome Forissier* vexpress-qemu_armv8a: standard 950c0c5d399SJerome Forissier* vexpress-qemu_virt: extended 951c0c5d399SJerome Forissier* zynqmp-zcu102: standard 952c0c5d399SJerome Forissier 953c0c5d399SJerome Forissier[github_commits_2_2_0]: https://github.com/OP-TEE/optee_os/compare/2.1.0...2.2.0 954c0c5d399SJerome Forissier[issue1081]: https://github.com/OP-TEE/optee_os/issues/1081 955c0c5d399SJerome Forissier[issue1071]: https://github.com/OP-TEE/optee_os/issues/1071 956c0c5d399SJerome Forissier[issue1069]: https://github.com/OP-TEE/optee_os/issues/1069 957c0c5d399SJerome Forissier[issue1092]: https://github.com/OP-TEE/optee_os/issues/1092 958c0c5d399SJerome Forissier[issue1093]: https://github.com/OP-TEE/optee_os/issues/1093 959c0c5d399SJerome Forissier 960ac3cc110SPascal Brand# OP-TEE - version 2.1.0 961a0cd5d60SPascal Brand 962ac3cc110SPascal Brand## New features 963ac3cc110SPascal Brand 964ac3cc110SPascal Brand* New supported platforms: 965ac3cc110SPascal Brand * Xilinx Zynq UltraScale+ MPSOC 966ac3cc110SPascal Brand * Spreadtrum SC9860 967ac3cc110SPascal Brand 968ac3cc110SPascal Brand* GCC5 support 969ac3cc110SPascal Brand 970ac3cc110SPascal Brand* Non Linear Mapping support: In OP-TEE kernel mode, the physical to virtual 971ac3cc110SPascal Brand addresses was linear until this release, meaning the virtual addresses 972ac3cc110SPascal Brand were equal to the physical addresses. This is no more the case in this 973ac3cc110SPascal Brand release. 974ac3cc110SPascal Brand 975ac3cc110SPascal Brand* Font rendering routines have been introduced in order to ease an 976ac3cc110SPascal Brand implementation of Trusted UI. 977ac3cc110SPascal Brand 978ac3cc110SPascal Brand* File Storage: Possibility to use the normal world filesystem and the RPMB 979ac3cc110SPascal Brand implementations simultaneously. 980ac3cc110SPascal Brand 981ac3cc110SPascal Brand* AOSP: There is a [local manifest][aosp_local_manifest] to build OP-TEE into an AOSP build, running on HiKey. 982ac3cc110SPascal Brand Please refer to the README in that repo for instructions. 983ac3cc110SPascal Brand 984ac3cc110SPascal Brand* OpenEmbedded: In addition to the makefile-based build described in the optee_os README, there is an 985ac3cc110SPascal Brand [OpenEmbedded-based build][oe_build] that supports Qemu (32-bit), FVP (64-bit), and HiKey (64-bit). 986ac3cc110SPascal Brand Please refer to the README in that repo for instructions. 987ac3cc110SPascal Brand 988ac3cc110SPascal Brand* [Link][github_commits_2_1_0] to a list of all commits between this and 989ac3cc110SPascal Brand previous release. 990ac3cc110SPascal Brand 991ac3cc110SPascal Brand 992ac3cc110SPascal Brand## Tested on 993ac3cc110SPascal BrandDefinitions: 994ac3cc110SPascal Brand 995ac3cc110SPascal Brand| Type | Meaning | 996ac3cc110SPascal Brand| ---- | ------- | 997ac3cc110SPascal Brand| Standard tests | The [optee_test][optee_test] project. | 998ac3cc110SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 999ac3cc110SPascal Brand 1000ac3cc110SPascal Brand* ARM Juno Board (vexpress-juno), standard. 1001ac3cc110SPascal Brand* Foundation Models (vexpress-fvp), standard tests + extended tests, 1002ac3cc110SPascal Brand using FVP ARM V8 Foundation Platformr0p0 (platform build 10.0.37) 1003ac3cc110SPascal Brand* FSL i.MX6 UltraLite EVK (imx), standard. 1004ac3cc110SPascal Brand* FSL ls1021a (ls-ls1021atwr), standard tests. 1005ac3cc110SPascal Brand* HiKey (hikey), standard + extended tests. 1006ac3cc110SPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 1007ac3cc110SPascal Brand* Xilinx Zynq UltraScale+ MPSOC, standard tests 1008ac3cc110SPascal Brand 1009ac3cc110SPascal BrandNote that the following platform has not been tested: 1010ac3cc110SPascal Brand* MTK8173-EVB (mediatek-mt8173) 1011ac3cc110SPascal Brand 1012ac3cc110SPascal Brand 1013ac3cc110SPascal Brand## Known issues 1014ac3cc110SPascal Brand* Issue(s) open on GitHub 1015ac3cc110SPascal Brand * [#868][pr868]: python-wand font generation sometimes times out 1016ac3cc110SPascal Brand * [#863][pr863]: "double free or corruption" error when building optee_os 1017ac3cc110SPascal Brand * [#858][pr858]: UUIDs in binary format have wrong endinanness 1018ac3cc110SPascal Brand * [#857][pr857]: Formatting of UUIDs is incorrect 1019ac3cc110SPascal Brand * [#847][pr847]: optee_os panic(TEE-CORE: Assertion) 1020ac3cc110SPascal Brand * [#838][pr838]: TUI font rendering is _very_ slow 1021ac3cc110SPascal Brand * [#814][pr814]: Persistent objects : save informations after close 1022ac3cc110SPascal Brand * [#665][pr665]: xtest 1013 stalled on HiKey when log levels are 4 and optee_os is on its own UART 1023ac3cc110SPascal Brand * [#506][pr506]: tee-supplicant panic & ta panic 1024ac3cc110SPascal Brand 1025ac3cc110SPascal Brand[github_commits_2_1_0]: https://github.com/OP-TEE/optee_os/compare/2.0.0...2.1.0 1026ac3cc110SPascal Brand[pr868]: https://github.com/OP-TEE/optee_os/issues/868 1027ac3cc110SPascal Brand[pr863]: https://github.com/OP-TEE/optee_os/issues/863 1028ac3cc110SPascal Brand[pr858]: https://github.com/OP-TEE/optee_os/issues/858 1029ac3cc110SPascal Brand[pr857]: https://github.com/OP-TEE/optee_os/issues/857 1030ac3cc110SPascal Brand[pr847]: https://github.com/OP-TEE/optee_os/issues/847 1031ac3cc110SPascal Brand[pr838]: https://github.com/OP-TEE/optee_os/issues/838 1032ac3cc110SPascal Brand[pr814]: https://github.com/OP-TEE/optee_os/issues/814 1033ac3cc110SPascal Brand[pr665]: https://github.com/OP-TEE/optee_os/issues/665 1034ac3cc110SPascal Brand[aosp_local_manifest]: https://github.com/linaro-swg/optee_android_manifest 1035ac3cc110SPascal Brand[oe_build]: https://github.com/linaro-swg/oe-optee 1036ac3cc110SPascal Brand 1037ac3cc110SPascal Brand# OP-TEE - version 2.0.0 1038a0cd5d60SPascal Brand 1039a0cd5d60SPascal Brand## New features 1040a0cd5d60SPascal Brand 1041a0cd5d60SPascal Brand* Generic driver: A new generic TEE driver is in the process of being 1042a0cd5d60SPascal Brand [upstreamed][gendrv_v9]. 1043a0cd5d60SPascal Brand In this release, [OP-TEE/optee_linuxdriver][optee_linuxdriver] is no more used. 1044a0cd5d60SPascal Brand Instead, linux v4.5 is being patched using the proposed Generic TEE Driver, 1045a0cd5d60SPascal Brand as it can be found in [https://github.com/linaro-swg/linux/tree/optee][linux_optee] 1046a0cd5d60SPascal Brand 1047a0cd5d60SPascal Brand* RPMB support: Secure Storage can now use Replay Protected Memory Block (RPMB) partition 1048a0cd5d60SPascal Brand of an eMMC device. Check the [full documentation][rpmb_doc] 1049a0cd5d60SPascal Brand 1050a0cd5d60SPascal Brand* Hard-float ABI is now available. 1051a0cd5d60SPascal Brand 1052a0cd5d60SPascal Brand* [Link][github_commits_2_0_0] to a list of all commits between this and 1053a0cd5d60SPascal Brand previous release. 1054a0cd5d60SPascal Brand 1055a0cd5d60SPascal Brand 1056a0cd5d60SPascal Brand## Tested on 1057a0cd5d60SPascal BrandDefinitions: 1058a0cd5d60SPascal Brand 1059a0cd5d60SPascal Brand| Type | Meaning | 1060a0cd5d60SPascal Brand| ---- | ------- | 1061a0cd5d60SPascal Brand| Standard tests | The [optee_test][optee_test] project. | 1062a0cd5d60SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 1063a0cd5d60SPascal Brand 1064a0cd5d60SPascal Brand* ARM Juno Board (vexpress-juno), standard. 1065a0cd5d60SPascal Brand* Foundation Models (vexpress-fvp), standard tests + extended tests, 1066a0cd5d60SPascal Brand using FVP ARM V8 Foundation Platformr0p0 (platform build 9.5.40) 1067eb00c7b9SPascal Brand* FSL ls1021a (ls-ls1021atwr), standard. 1068a0cd5d60SPascal Brand* HiKey (hikey), standard. 1069a0cd5d60SPascal Brand* MTK8173-EVB (mediatek-mt8173), standard. 1070a0cd5d60SPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 1071a0cd5d60SPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 1072a0cd5d60SPascal Brand 1073a0cd5d60SPascal Brand## Known issues 1074a0cd5d60SPascal Brand* Issue(s) open on GitHub 1075a0cd5d60SPascal Brand * [#40][prld40] BUG_ON() when re-using RPC buffer to tee-supplicant 1076a0cd5d60SPascal Brand * [#506][pr506]: tee-supplicant panic & ta panic 1077a0cd5d60SPascal Brand 1078a0cd5d60SPascal Brand[github_commits_2_0_0]: https://github.com/OP-TEE/optee_os/compare/1.1.0...2.0.0 1079a0cd5d60SPascal Brand[rpmb_doc]: https://github.com/OP-TEE/optee_os/blob/master/documentation/secure_storage_rpmb.md 1080a0cd5d60SPascal Brand[optee_linuxdriver]: https://github.com/OP-TEE/optee_linuxdriver 1081a0cd5d60SPascal Brand[gendrv_v9]: https://lkml.org/lkml/2016/4/1/205 1082a0cd5d60SPascal Brand[linux_optee]: https://github.com/linaro-swg/linux/tree/optee 1083a0cd5d60SPascal Brand 1084a0cd5d60SPascal Brand 1085c5bbfb4dSPascal Brand# OP-TEE - version 1.1.0 1086c5bbfb4dSPascal Brand 1087c5bbfb4dSPascal Brand 1088c5bbfb4dSPascal Brand## New features 1089c5bbfb4dSPascal Brand 1090c5bbfb4dSPascal Brand* Softfloat library: floating point support is now available in 32bits TA. 1091c5bbfb4dSPascal Brand 1092c5bbfb4dSPascal Brand* Support running 64-bits TA: on ARMv8-A platform, TA can be compiled in 1093c5bbfb4dSPascal Brand AArch32 and/or in AArch64 in case the core is compiled in AArch64. 1094c5bbfb4dSPascal Brand An example can be found in HiKey configuration file. Using the following 1095c5bbfb4dSPascal Brand excerpt code, the user TA libraries are compiled in both AArch32 and 1096c5bbfb4dSPascal Brand AArch64, and can be found in `out/arm-plat-hikey/export-ta_arm32` and 1097c5bbfb4dSPascal Brand `out/arm-plat-hikey/export-ta_arm64` 1098c5bbfb4dSPascal Brand 1099c5bbfb4dSPascal Brand``` 1100c5bbfb4dSPascal Brand ta-targets = ta_arm32 1101c5bbfb4dSPascal Brand ta-targets += ta_arm64 1102c5bbfb4dSPascal Brand``` 1103c5bbfb4dSPascal Brand 1104c5bbfb4dSPascal Brand* Concurrent TA support: multiple TA can run in parallel on 1105c5bbfb4dSPascal Brand several cores. 1106c5bbfb4dSPascal Brand 1107c5bbfb4dSPascal Brand* New tests added in xtest test suite: concurrent TA (xtest 1013), 1108c5bbfb4dSPascal Brand floating point tests (xtest 1006 and os_test TA) and corruption 1109c5bbfb4dSPascal Brand file storage (xtest 20000) 1110c5bbfb4dSPascal Brand 1111c5bbfb4dSPascal Brand* [Link][github_commits_1_1_0] to a list of all commits between this and 1112c5bbfb4dSPascal Brand previous release. 1113c5bbfb4dSPascal Brand 1114c5bbfb4dSPascal Brand 1115c5bbfb4dSPascal Brand## Tested on 1116c5bbfb4dSPascal BrandDefinitions: 1117c5bbfb4dSPascal Brand 1118c5bbfb4dSPascal Brand| Type | Meaning | 1119c5bbfb4dSPascal Brand| ---- | ------- | 1120c5bbfb4dSPascal Brand| Standard tests | The [optee_test][optee_test] project. | 1121c5bbfb4dSPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 1122c5bbfb4dSPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 1123c5bbfb4dSPascal Brand 1124c5bbfb4dSPascal Brand* Foundation Models (vexpress-fvp), standard tests + extended tests, 1125c5bbfb4dSPascal Brand using FVP ARM V8 Foundation Platformr0p0 (platform build 9.5.40) 1126c5bbfb4dSPascal Brand* HiKey (hikey), standard + extended tests. 1127c5bbfb4dSPascal Brand* MT8173 (mediatek), standard tests. 1128c5bbfb4dSPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 1129c5bbfb4dSPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 1130c5bbfb4dSPascal Brand 1131c5bbfb4dSPascal Brand## Known issues 1132c5bbfb4dSPascal Brand* Secure Storage is implemented, but note that anti-rollback protection 1133c5bbfb4dSPascal Brand is not implemented yet. 1134c5bbfb4dSPascal Brand 1135c5bbfb4dSPascal Brand* Issue(s) open on GitHub 1136c5bbfb4dSPascal Brand * [#40][prld40] BUG_ON() when re-using RPC buffer to tee-supplicant 1137c5bbfb4dSPascal Brand * [#296][pr296]: Connecting RPMB to the storage APIs. 1138c5bbfb4dSPascal Brand * [#493][pr493]: setup_juno_optee: unable to find pre-built binaries 1139c5bbfb4dSPascal Brand * [#506][pr506]: tee-supplicant panic & ta panic 1140c5bbfb4dSPascal Brand 1141c5bbfb4dSPascal Brand[prld40]: https://github.com/OP-TEE/optee_linuxdriver/issues/40 1142c5bbfb4dSPascal Brand[pr506]: https://github.com/OP-TEE/optee_os/issues/506 1143c5bbfb4dSPascal Brand[github_commits_1_1_0]: https://github.com/OP-TEE/optee_os/compare/1.0.1...1.1.0 1144c5bbfb4dSPascal Brand 1145c5bbfb4dSPascal Brand 1146c5bbfb4dSPascal Brand 11478a7ee79dSPascal Brand# OP-TEE - version 1.0.0 11488a7ee79dSPascal Brand 11498a7ee79dSPascal BrandOP-TEE is now maintained by Linaro. Contributors do not need to 11508a7ee79dSPascal Brandsign a CLA anymore, but must follow the rules of the [DCO][DCO] 11518a7ee79dSPascal Brand(Developer Certificate of Origin) instead. 11528a7ee79dSPascal Brand 11538a7ee79dSPascal Brand 11548a7ee79dSPascal Brand## New features 11558a7ee79dSPascal Brand 11568a7ee79dSPascal Brand* Add hardware support for Texas Instruments DRA7xx, ARMv7 (plat-ti) 11578a7ee79dSPascal Brand 11588a7ee79dSPascal Brand* GlobalPlatform™ TEE Internal Core API Specification v1.1, 11598a7ee79dSPascal Brand including ECC algorithms. 11608a7ee79dSPascal Brand 11618a7ee79dSPascal Brand* Secure Storage: Files stored by the REE are now encrypted. Operations 11628a7ee79dSPascal Brand are made atomic in order to prevent inconsistencies in case of errors 11638a7ee79dSPascal Brand during the storage operations. [Slides][LCStorage] describing the 11648a7ee79dSPascal Brand Secure Storage have been presented at the Linaro Connect SFO15. 11658a7ee79dSPascal Brand 11668a7ee79dSPascal Brand* Change of format of the Trusted Applications: they follow a 11678a7ee79dSPascal Brand [signed ELF format][elf] 11688a7ee79dSPascal Brand 11698a7ee79dSPascal Brand* Rework thread [synchronization][synchro] in optee_os. 11708a7ee79dSPascal Brand 11718a7ee79dSPascal Brand* Use of ARMv8 native cryptographic support. 11728a7ee79dSPascal Brand 11738a7ee79dSPascal Brand* [OP-TEE/optee_test][optee_test] test suite is released. 11748a7ee79dSPascal Brand 11758a7ee79dSPascal Brand* Introduce [OP-TEE/manifest][manifest] and [OP-TEE/build][build] 11768a7ee79dSPascal Brand to setup and build QEMU, FVP, HiKey and Mediatek platforms. Setup scripts 11778a7ee79dSPascal Brand that used to be in optee_os have been removed, except for Juno board. 11788a7ee79dSPascal Brand 117995422146SPascal Brand* [Link][github_commits_1_0_0] to a list of all commits between this and 118095422146SPascal Brand previous release. 118195422146SPascal Brand 11828a7ee79dSPascal Brand 11838a7ee79dSPascal Brand## Tested on 11848a7ee79dSPascal BrandDefinitions: 11858a7ee79dSPascal Brand 11868a7ee79dSPascal Brand| Type | Meaning | 11878a7ee79dSPascal Brand| ---- | ------- | 11888a7ee79dSPascal Brand| Standard tests | The [optee_test][optee_test] project. | 11898a7ee79dSPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 11908a7ee79dSPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 11918a7ee79dSPascal Brand 11928a7ee79dSPascal Brand* ARM Juno Board (vexpress-juno), standard + extended tests. 11938a7ee79dSPascal Brand* Foundation Models (vexpress-fvp), standard tests. 11948a7ee79dSPascal Brand* HiKey (hikey), standard + extended tests. 11958a7ee79dSPascal Brand* MT8173 (mediatek), standard tests. 11968a7ee79dSPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 11978a7ee79dSPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 11988a7ee79dSPascal Brand 119995422146SPascal Brand## Known issues 120095422146SPascal Brand* Secure Storage is implemented, but note that anti-rollback protection 120195422146SPascal Brand is not implemented yet. 120295422146SPascal Brand 120395422146SPascal Brand* Issue(s) open on GitHub 120495422146SPascal Brand * [#210][pr210]: libteec.so 32-bit does not communicate well 120595422146SPascal Brand with 64-bit kernel module 120695422146SPascal Brand * [#296][pr296]: Connecting RPMB to the storage APIs. 120795422146SPascal Brand * [#493][pr493]: setup_juno_optee: unable to find pre-built binaries 120895422146SPascal Brand * [#494][pr494]: HiKey: xtest 7671 fails (1.0.0-rc2) 120995422146SPascal Brand 121095422146SPascal Brand[pr210]: https://github.com/OP-TEE/optee_os/issues/210 121195422146SPascal Brand[pr296]: https://github.com/OP-TEE/optee_os/issues/296 121295422146SPascal Brand[pr493]: https://github.com/OP-TEE/optee_os/issues/493 121395422146SPascal Brand[pr494]: https://github.com/OP-TEE/optee_os/issues/494 121495422146SPascal Brand[github_commits_1_0_0]: https://github.com/OP-TEE/optee_os/compare/0.3.0...1.0.0 12158a7ee79dSPascal Brand[DCO]: https://github.com/OP-TEE/optee_os/blob/master/Notice.md#contributions 12168a7ee79dSPascal Brand[LCStorage]: http://www.slideshare.net/linaroorg/sfo15503-secure-storage-in-optee 12178a7ee79dSPascal Brand[synchro]: https://github.com/OP-TEE/optee_os/blob/master/documentation/optee_design.md#4-thread-handling 12188a7ee79dSPascal Brand[elf]: https://github.com/OP-TEE/optee_os/blob/master/documentation/optee_design.md#format 12198a7ee79dSPascal Brand[optee_test]: https://github.com/OP-TEE/optee_test 12208a7ee79dSPascal Brand[manifest]: https://github.com/OP-TEE/manifest 12218a7ee79dSPascal Brand[build]: https://github.com/OP-TEE/build 12228a7ee79dSPascal Brand 122395422146SPascal Brand 122495422146SPascal Brand 122511d59085SPascal Brand# OP-TEE - version 0.3.0 122611d59085SPascal Brand 122711d59085SPascal Brand## New features 122811d59085SPascal Brand 122911d59085SPascal Brand* Add hardware support for 123011d59085SPascal Brand * Mediatek MT8173 Board, ARMv8-A (plat-mediatek) 123111d59085SPascal Brand * Hisilicon HiKey Board, ARMv8-A (plat-hikey) 123211d59085SPascal Brand* AArch64 build of optee_os is now possible through the configuration `CFG_ARM64_core=y` 123311d59085SPascal Brand* Secure Storage: Data can be encrypted prior to their storage in the non-secure. 123411d59085SPascal Brand Build is configured using `CFG_ENC_FS=y` 123511d59085SPascal Brand* A generic boot scheme can be used. Boot configuration is commonalized. This helps 123611d59085SPascal Brand new board support. It is applied on plat-hikey, plat-vexpress, plat-mediatek, plat-stm 123711d59085SPascal Brand and plat-vexpress. 123811d59085SPascal Brand 123911d59085SPascal Brand## Tested on 124011d59085SPascal BrandDefinitions: 124111d59085SPascal Brand 124211d59085SPascal Brand| Type | Meaning | 124311d59085SPascal Brand| ---- | ------- | 124411d59085SPascal Brand| Standard tests | The optee_test project. | 124511d59085SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 124611d59085SPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 124711d59085SPascal Brand 124811d59085SPascal Brand* ARM Juno Board (vexpress-juno), standard tests. 124911d59085SPascal Brand* Foundation Models (vexpress-fvp), standard tests. 125011d59085SPascal Brand* HiKey (hikey), standard tests. 125111d59085SPascal Brand* MT8173 (mediatek), standard tests. 125211d59085SPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 125311d59085SPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 125411d59085SPascal Brand 125511d59085SPascal Brand------------------------------------------- 125611d59085SPascal Brand 1257f5117af2SPascal Brand# OP-TEE - version 0.2.0 1258759cc499SJoakim Bech 1259f5117af2SPascal Brand## New features 1260f5117af2SPascal Brand 1261f5117af2SPascal Brand### Linux Driver Refactoring 1262f5117af2SPascal Brand 1263f5117af2SPascal BrandLinux Driver has been refactored. It is now split in two parts: 1264f5117af2SPascal Brand* optee.ko, the generic Linux driver. It contains all functionality 1265f5117af2SPascal Brand common to all backends. 1266f5117af2SPascal Brand* optee_armtz.ko, a specific backend dedicated to the TrustZone optee. 1267f5117af2SPascal Brand It depends on optee.ko. 1268f5117af2SPascal Brand 1269f5117af2SPascal BrandLoading the TrustZone optee linux driver module is now performed using 1270f5117af2SPascal Brand 1271f5117af2SPascal Brand modprobe optee_armtz 1272f5117af2SPascal Brand 1273f5117af2SPascal BrandThanks to the dependency between the generic and the backend modules, optee.ko is then automatically loaded. 1274f5117af2SPascal Brand 1275f5117af2SPascal Brand### Misc new features 1276f5117af2SPascal Brand* support PL310 lock down at TEE boot 1277f5117af2SPascal Brand* add 64bits support (division / print) 1278f5117af2SPascal Brand 1279f5117af2SPascal Brand## Tested on 1280f5117af2SPascal BrandDefinitions: 1281f5117af2SPascal Brand 1282f5117af2SPascal Brand| Type | Meaning | 1283f5117af2SPascal Brand| ---- | ------- | 1284f5117af2SPascal Brand| Standard tests | The optee_test project. | 1285f5117af2SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 1286f5117af2SPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 1287f5117af2SPascal Brand 1288f5117af2SPascal Brand* ARM Juno Board (vexpress-juno), standard tests + extended tests. 1289f5117af2SPascal Brand 1290f5117af2SPascal Brand* Foundation Models (vexpress-fvp), standard + extended tests. 1291f5117af2SPascal Brand 1292f5117af2SPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 1293f5117af2SPascal Brand 1294f5117af2SPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 1295f5117af2SPascal Brand 1296f5117af2SPascal Brand 129728fcee17SJerome Forissier## Issues resolved since last release 1298f5117af2SPascal Brand* Fix user TA trace issue, in order each TA is able to select its own trace level 1299f5117af2SPascal Brand 1300f5117af2SPascal Brand 1301f5117af2SPascal Brand------------------------------------------- 1302f5117af2SPascal Brand# OP-TEE - version 0.1.0 1303f5117af2SPascal Brand 1304f5117af2SPascal Brand## New features 1305759cc499SJoakim BechBelow is a summary of the most important features added, but at the end you will 1306759cc499SJoakim Bechfind a link that present you all commits between the current and previous 1307759cc499SJoakim Bechrelease tag. 1308759cc499SJoakim Bech 1309759cc499SJoakim Bech* GlobalPlatform Client API v1.0 support. 1310759cc499SJoakim Bech 1311759cc499SJoakim Bech* GlobalPlatform Internal API v1.0 support. 1312759cc499SJoakim Bech 1313759cc499SJoakim Bech* GlobalPlatform Secure Elements v1.0 support. 1314759cc499SJoakim Bech 1315759cc499SJoakim Bech* Add hardware support for 1316759cc499SJoakim Bech 1317759cc499SJoakim Bech * Allwinner A80, ARMv7-A. 1318759cc499SJoakim Bech 1319759cc499SJoakim Bech * ARM Juno Board, ARMv8-A. 1320759cc499SJoakim Bech 1321759cc499SJoakim Bech * Foundation Models, ARMv8-A. 1322759cc499SJoakim Bech 1323759cc499SJoakim Bech * Fast Models, ARMv8-A. 1324759cc499SJoakim Bech 1325759cc499SJoakim Bech * QEMU, ARMv7-A. 1326759cc499SJoakim Bech 1327759cc499SJoakim Bech * STM Cannes, ARMv7-A. 1328759cc499SJoakim Bech 1329759cc499SJoakim Bech * STM Orly2, ARMv7-A. 1330759cc499SJoakim Bech 1331759cc499SJoakim Bech* Add LibTomCrypt as the default software cryptographic library. 1332759cc499SJoakim Bech 1333759cc499SJoakim Bech* Add cryptographic abstraction layer in on secure side to ease the use of 1334759cc499SJoakim Bech other cryptographic software libraries or adding support for hardware 1335759cc499SJoakim Bech acceleration. 1336759cc499SJoakim Bech 1337759cc499SJoakim Bech* Extended cryptographic API with support for HKDF, Concat KDF and PBKDF2. 1338759cc499SJoakim Bech 1339759cc499SJoakim Bech* SHA-1 and SHA-256 ARMv8-A crypto extension implementation. 1340759cc499SJoakim Bech 1341759cc499SJoakim Bech* Enabled paging support in OP-TEE OS. 1342759cc499SJoakim Bech 1343759cc499SJoakim Bech* Add support for xtest (both standard and extended) in QEMU and FVP setup 1344759cc499SJoakim Bech scripts. 1345759cc499SJoakim Bech 1346759cc499SJoakim Bech* Add documentation for the OS design, cryptographic abstraction layer, secure 1347759cc499SJoakim Bech elements design, the build system, GitHub usage, key derivation extensions, 1348759cc499SJoakim Bech ARM-Trusted Firmware usage within OP-TEE and GlobalPlatform usage within 1349759cc499SJoakim Bech OP-TEE. 1350759cc499SJoakim Bech 1351759cc499SJoakim Bech* Integrate support for Travis CI. 1352759cc499SJoakim Bech 1353759cc499SJoakim Bech* [Link][github_commits_0_1_0] to a list of all commits between this and 1354759cc499SJoakim Bech previous release. 1355759cc499SJoakim Bech 1356759cc499SJoakim Bech 1357f5117af2SPascal Brand## Tested on 1358759cc499SJoakim BechDefinitions: 1359759cc499SJoakim Bech 1360759cc499SJoakim Bech| Type | Meaning | 1361759cc499SJoakim Bech| ---- | ------- | 1362759cc499SJoakim Bech| Standard tests | The optee_test project. | 1363759cc499SJoakim Bech| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.0.0. | 1364759cc499SJoakim Bech| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 1365759cc499SJoakim Bech 1366759cc499SJoakim Bech* Allwinner A80 (plat-sunxi), hello world test. 1367759cc499SJoakim Bech 1368759cc499SJoakim Bech* ARM Juno Board (vexpress-juno), standard tests. 1369759cc499SJoakim Bech 1370759cc499SJoakim Bech* Foundation Models (plat-vexpress-fvp), standard + extended tests 1371759cc499SJoakim Bech 1372759cc499SJoakim Bech* QEMU (plat-vexpress-qemu), standard + extended tests (and Secure Elements 1373759cc499SJoakim Bech tested separately). 1374759cc499SJoakim Bech 1375759cc499SJoakim Bech* STM Cannes (plat-stm-cannes), standard + extended tests. 1376759cc499SJoakim Bech 1377759cc499SJoakim Bech 137828fcee17SJerome Forissier## Issues resolved since last release 1379759cc499SJoakim BechN/A since this is the first release tag on OP-TEE. 1380759cc499SJoakim Bech 1381759cc499SJoakim Bech 1382f5117af2SPascal Brand## Known issues 1383759cc499SJoakim Bech* Storage is implemented, but not "Secure storage", meaning that a client 1384759cc499SJoakim Bech needs to do encrypt files on their own before storing the files. 1385759cc499SJoakim Bech 1386759cc499SJoakim Bech* Issue(s) open on GitHub 1387759cc499SJoakim Bech * [#95][pr95]: An error about building the test code of libtomcrypt. 1388759cc499SJoakim Bech 1389759cc499SJoakim Bech * [#149][pr149]: when testing optee os with arm trusted firmware (I 1390759cc499SJoakim Bech utilized optee os tee.bin as bl32 image) on juno platform, I got an 1391759cc499SJoakim Bech error. 1392759cc499SJoakim Bech 1393759cc499SJoakim Bech * [#161][pr161]: tee_svc_cryp.c lacks accessibility checks on 1394759cc499SJoakim Bech user-supplied TEE_Attributes. 1395759cc499SJoakim Bech 1396759cc499SJoakim Bech[hello_world]: https://github.com/jenswi-linaro/lcu14_optee_hello_world 1397759cc499SJoakim Bech[github_commits_0_1_0]: https://github.com/OP-TEE/optee_os/compare/b01047730e77127c23a36591643eeb8bb0487d68...999e4a6c0f64d3177fd3d0db234107b6fb860884 1398759cc499SJoakim Bech[pr95]: https://github.com/OP-TEE/optee_os/issues/95 1399759cc499SJoakim Bech[pr149]: https://github.com/OP-TEE/optee_os/issues/149 1400759cc499SJoakim Bech[pr161]: https://github.com/OP-TEE/optee_os/issues/161 1401759cc499SJoakim Bech 14027583c59eSCedric Chaumont* Global Platform Device Internal Core API v1.1 14037583c59eSCedric Chaumont * [#230][pr230]: Persistent object corruption support (TEE_ERROR_CORRUPT_OBJECT/_2) 14047583c59eSCedric Chaumont * [#230][pr230]: Persistent object access support (TEE_ERROR_STORAGE_NOT_AVAILABLE/_2) 1405