1*d21befa5SJerome Forissier# OP-TEE - version 3.14.0 (target date: 2021-07-16) 2*d21befa5SJerome Forissier 3*d21befa5SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for: 4*d21befa5SJerome Forissier - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_14_0], [commits][OP_TEE_optee_os_commits_3_14_0] and [pull requests][OP_TEE_optee_os_pr_3_14_0] 5*d21befa5SJerome Forissier - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_14_0], [commits][OP_TEE_optee_client_commits_3_14_0] and [pull requests][OP_TEE_optee_client_pr_3_14_0] 6*d21befa5SJerome Forissier - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_14_0], [commits][OP_TEE_optee_test_commits_3_14_0] and [pull requests][OP_TEE_optee_test_pr_3_14_0] 7*d21befa5SJerome Forissier - OP-TEE/build: [release page][OP_TEE_build_release_3_14_0], [commits][OP_TEE_build_commits_3_14_0] and [pull requests][OP_TEE_build_pr_3_14_0] 8*d21befa5SJerome Forissier - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_14_0], [commits][linaro_swg_optee_examples_commits_3_14_0] and [pull requests][linaro_swg_optee_examples_pr_3_14_0] 9*d21befa5SJerome Forissier 10*d21befa5SJerome Forissier 11*d21befa5SJerome Forissier[OP_TEE_optee_os_release_3_14_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.14.0 12*d21befa5SJerome Forissier[OP_TEE_optee_os_commits_3_14_0]: https://github.com/OP-TEE/optee_os/compare/3.13.0...3.14.0 13*d21befa5SJerome Forissier[OP_TEE_optee_os_pr_3_14_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01..2021-07-16 14*d21befa5SJerome Forissier 15*d21befa5SJerome Forissier[OP_TEE_optee_client_release_3_14_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.14.0 16*d21befa5SJerome Forissier[OP_TEE_optee_client_commits_3_14_0]: https://github.com/OP-TEE/optee_client/compare/3.13.0...3.14.0 17*d21befa5SJerome Forissier[OP_TEE_optee_client_pr_3_14_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01-..2021-07-16 18*d21befa5SJerome Forissier 19*d21befa5SJerome Forissier[OP_TEE_optee_test_release_3_14_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.14.0 20*d21befa5SJerome Forissier[OP_TEE_optee_test_commits_3_14_0]: https://github.com/OP-TEE/optee_test/compare/3.13.0...3.14.0 21*d21befa5SJerome Forissier[OP_TEE_optee_test_pr_3_14_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01..2021-07-16 22*d21befa5SJerome Forissier 23*d21befa5SJerome Forissier[OP_TEE_build_release_3_14_0]: https://github.com/OP-TEE/build/releases/tag/3.14.0 24*d21befa5SJerome Forissier[OP_TEE_build_commits_3_14_0]: https://github.com/OP-TEE/build/compare/3.13.0...3.14.0 25*d21befa5SJerome Forissier[OP_TEE_build_pr_3_14_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01..2021-07-16 26*d21befa5SJerome Forissier 27*d21befa5SJerome Forissier[linaro_swg_optee_examples_release_3_14_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.14.0 28*d21befa5SJerome Forissier[linaro_swg_optee_examples_commits_3_14_0]: https://github.com/linaro-swg/optee_examples/compare/3.13.0...3.14.0 29*d21befa5SJerome Forissier[linaro_swg_optee_examples_pr_3_14_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-05-01..2021-07-16 30*d21befa5SJerome Forissier 3130c13f9eSRuchika Gupta# OP-TEE - version 3.13.0 (2021-04-30) 3230c13f9eSRuchika Gupta 3330c13f9eSRuchika Gupta- Links to the release pages, commits and pull requests merged into this release for: 3430c13f9eSRuchika Gupta - OP-TEE/optee_os: [release page][OP_TEE_optee_os_release_3_13_0], [commits][OP_TEE_optee_os_commits_3_13_0] and [pull requests][OP_TEE_optee_os_pr_3_13_0] 3530c13f9eSRuchika Gupta - OP-TEE/optee_client: [release page][OP_TEE_optee_client_release_3_13_0], [commits][OP_TEE_optee_client_commits_3_13_0] and [pull requests][OP_TEE_optee_client_pr_3_13_0] 3630c13f9eSRuchika Gupta - OP-TEE/optee_test: [release page][OP_TEE_optee_test_release_3_13_0], [commits][OP_TEE_optee_test_commits_3_13_0] and [pull requests][OP_TEE_optee_test_pr_3_13_0] 3730c13f9eSRuchika Gupta - OP-TEE/build: [release page][OP_TEE_build_release_3_13_0], [commits][OP_TEE_build_commits_3_13_0] and [pull requests][OP_TEE_build_pr_3_13_0] 3830c13f9eSRuchika Gupta - linaro-swg/optee_examples: [release page][linaro_swg_optee_examples_release_3_13_0], [commits][linaro_swg_optee_examples_commits_3_13_0] and [pull requests][linaro_swg_optee_examples_pr_3_13_0] 3930c13f9eSRuchika Gupta 4030c13f9eSRuchika Gupta 4130c13f9eSRuchika Gupta[OP_TEE_optee_os_release_3_13_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.13.0 4230c13f9eSRuchika Gupta[OP_TEE_optee_os_commits_3_13_0]: https://github.com/OP-TEE/optee_os/compare/3.12.0...3.13.0 4330c13f9eSRuchika Gupta[OP_TEE_optee_os_pr_3_13_0]: https://github.com/OP-TEE/optee_os/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30 4430c13f9eSRuchika Gupta 4530c13f9eSRuchika Gupta[OP_TEE_optee_client_release_3_13_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.13.0 4630c13f9eSRuchika Gupta[OP_TEE_optee_client_commits_3_13_0]: https://github.com/OP-TEE/optee_client/compare/3.12.0...3.13.0 4730c13f9eSRuchika Gupta[OP_TEE_optee_client_pr_3_13_0]: https://github.com/OP-TEE/optee_client/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30 4830c13f9eSRuchika Gupta 4930c13f9eSRuchika Gupta[OP_TEE_optee_test_release_3_13_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.13.0 5030c13f9eSRuchika Gupta[OP_TEE_optee_test_commits_3_13_0]: https://github.com/OP-TEE/optee_test/compare/3.12.0...3.13.0 5130c13f9eSRuchika Gupta[OP_TEE_optee_test_pr_3_13_0]: https://github.com/OP-TEE/optee_test/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30 5230c13f9eSRuchika Gupta 5330c13f9eSRuchika Gupta[OP_TEE_build_release_3_13_0]: https://github.com/OP-TEE/build/releases/tag/3.13.0 5430c13f9eSRuchika Gupta[OP_TEE_build_commits_3_13_0]: https://github.com/OP-TEE/build/compare/3.12.0...3.13.0 5530c13f9eSRuchika Gupta[OP_TEE_build_pr_3_13_0]: https://github.com/OP-TEE/build/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30 5630c13f9eSRuchika Gupta 5730c13f9eSRuchika Gupta[linaro_swg_optee_examples_release_3_13_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.13.0 5830c13f9eSRuchika Gupta[linaro_swg_optee_examples_commits_3_13_0]: https://github.com/linaro-swg/optee_examples/compare/3.12.0...3.13.0 5930c13f9eSRuchika Gupta[linaro_swg_optee_examples_pr_3_13_0]: https://github.com/linaro-swg/optee_examples/pulls?q=is%3Apr+is%3Amerged+base%3Amaster+merged%3A2021-01-20..2021-04-30 6030c13f9eSRuchika Gupta 613d47a131SJoakim Bech# OP-TEE - version 3.12.0 (2021-01-20) 623d47a131SJoakim Bech 633d47a131SJoakim Bech- Links to the release pages, commits and pull requests merged into this release for: 643d47a131SJoakim 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] 653d47a131SJoakim 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] 663d47a131SJoakim 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] 673d47a131SJoakim 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] 683d47a131SJoakim 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] 693d47a131SJoakim Bech 703d47a131SJoakim Bech 713d47a131SJoakim Bech[OP_TEE_optee_os_release_3_12_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.12.0 723d47a131SJoakim Bech[OP_TEE_optee_os_commits_3_12_0]: https://github.com/OP-TEE/optee_os/compare/3.11.0...3.12.0 733d47a131SJoakim 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 743d47a131SJoakim Bech 753d47a131SJoakim Bech[OP_TEE_optee_client_release_3_12_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.12.0 763d47a131SJoakim Bech[OP_TEE_optee_client_commits_3_12_0]: https://github.com/OP-TEE/optee_client/compare/3.11.0...3.12.0 773d47a131SJoakim 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 783d47a131SJoakim Bech 793d47a131SJoakim Bech[OP_TEE_optee_test_release_3_12_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.12.0 803d47a131SJoakim Bech[OP_TEE_optee_test_commits_3_12_0]: https://github.com/OP-TEE/optee_test/compare/3.11.0...3.12.0 813d47a131SJoakim 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 823d47a131SJoakim Bech 833d47a131SJoakim Bech[OP_TEE_build_release_3_12_0]: https://github.com/OP-TEE/build/releases/tag/3.12.0 843d47a131SJoakim Bech[OP_TEE_build_commits_3_12_0]: https://github.com/OP-TEE/build/compare/3.11.0...3.12.0 853d47a131SJoakim 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 863d47a131SJoakim Bech 873d47a131SJoakim Bech[linaro_swg_optee_examples_release_3_12_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.12.0 883d47a131SJoakim Bech[linaro_swg_optee_examples_commits_3_12_0]: https://github.com/linaro-swg/optee_examples/compare/3.11.0...3.12.0 893d47a131SJoakim 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 903d47a131SJoakim Bech 91c4def2a8SJerome Forissier# OP-TEE - version 3.11.0 (2020-10-16) 92c4def2a8SJerome Forissier 93c4def2a8SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for: 94c4def2a8SJerome 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] 95c4def2a8SJerome 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] 96c4def2a8SJerome 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] 97c4def2a8SJerome 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] 98c4def2a8SJerome 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] 99c4def2a8SJerome Forissier 100c4def2a8SJerome Forissier 101c4def2a8SJerome Forissier[OP_TEE_optee_os_release_3_11_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.11.0 102c4def2a8SJerome Forissier[OP_TEE_optee_os_commits_3_11_0]: https://github.com/OP-TEE/optee_os/compare/3.10.0...3.11.0 103c4def2a8SJerome 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 104c4def2a8SJerome Forissier 105c4def2a8SJerome Forissier[OP_TEE_optee_client_release_3_11_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.11.0 106c4def2a8SJerome Forissier[OP_TEE_optee_client_commits_3_11_0]: https://github.com/OP-TEE/optee_client/compare/3.10.0...3.11.0 107c4def2a8SJerome 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 108c4def2a8SJerome Forissier 109c4def2a8SJerome Forissier[OP_TEE_optee_test_release_3_11_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.11.0 110c4def2a8SJerome Forissier[OP_TEE_optee_test_commits_3_11_0]: https://github.com/OP-TEE/optee_test/compare/3.10.0...3.11.0 111c4def2a8SJerome 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 112c4def2a8SJerome Forissier 113c4def2a8SJerome Forissier[OP_TEE_build_release_3_11_0]: https://github.com/OP-TEE/build/releases/tag/3.11.0 114c4def2a8SJerome Forissier[OP_TEE_build_commits_3_11_0]: https://github.com/OP-TEE/build/compare/3.10.0...3.11.0 115c4def2a8SJerome 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 116c4def2a8SJerome Forissier 117c4def2a8SJerome Forissier[linaro_swg_optee_examples_release_3_11_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.11.0 118c4def2a8SJerome Forissier[linaro_swg_optee_examples_commits_3_11_0]: https://github.com/linaro-swg/optee_examples/compare/3.10.0...3.11.0 119c4def2a8SJerome 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 120c4def2a8SJerome Forissier 121d1c63543SJerome Forissier# OP-TEE - version 3.10.0 (2020-08-21) 122d1c63543SJerome Forissier 123d1c63543SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for: 124d1c63543SJerome 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] 125d1c63543SJerome 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] 126d1c63543SJerome 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] 127d1c63543SJerome 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] 128d1c63543SJerome 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] 129d1c63543SJerome Forissier 130d1c63543SJerome Forissier 131d1c63543SJerome Forissier[OP_TEE_optee_os_release_3_10_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.10.0 132d1c63543SJerome Forissier[OP_TEE_optee_os_commits_3_10_0]: https://github.com/OP-TEE/optee_os/compare/3.9.0...3.10.0 133d1c63543SJerome 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 134d1c63543SJerome Forissier 135d1c63543SJerome Forissier[OP_TEE_optee_client_release_3_10_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.10.0 136d1c63543SJerome Forissier[OP_TEE_optee_client_commits_3_10_0]: https://github.com/OP-TEE/optee_client/compare/3.9.0...3.10.0 137d1c63543SJerome 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 138d1c63543SJerome Forissier 139d1c63543SJerome Forissier[OP_TEE_optee_test_release_3_10_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.10.0 140d1c63543SJerome Forissier[OP_TEE_optee_test_commits_3_10_0]: https://github.com/OP-TEE/optee_test/compare/3.9.0...3.10.0 141d1c63543SJerome 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 142d1c63543SJerome Forissier 143d1c63543SJerome Forissier[OP_TEE_build_release_3_10_0]: https://github.com/OP-TEE/build/releases/tag/3.10.0 144d1c63543SJerome Forissier[OP_TEE_build_commits_3_10_0]: https://github.com/OP-TEE/build/compare/3.9.0...3.10.0 145d1c63543SJerome 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 146d1c63543SJerome Forissier 147d1c63543SJerome Forissier[linaro_swg_optee_examples_release_3_10_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.10.0 148d1c63543SJerome Forissier[linaro_swg_optee_examples_commits_3_10_0]: https://github.com/linaro-swg/optee_examples/compare/3.9.0...3.10.0 149d1c63543SJerome 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 150d1c63543SJerome Forissier 151af141c61SJens Wiklander# OP-TEE - version 3.9.0 (2020-04-22) 152af141c61SJens Wiklander 153af141c61SJens Wiklander- Links to the release pages, commits and pull requests merged into this release for: 154af141c61SJens 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] 155af141c61SJens 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] 156af141c61SJens 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] 157af141c61SJens 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] 158af141c61SJens 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] 159af141c61SJens Wiklander 160af141c61SJens Wiklander 161af141c61SJens Wiklander[OP_TEE_optee_os_release_3_9_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.9.0 162af141c61SJens Wiklander[OP_TEE_optee_os_commits_3_9_0]: https://github.com/OP-TEE/optee_os/compare/3.8.0...3.9.0 163af141c61SJens 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 164af141c61SJens Wiklander 165af141c61SJens Wiklander[OP_TEE_optee_client_release_3_9_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.9.0 166af141c61SJens Wiklander[OP_TEE_optee_client_commits_3_9_0]: https://github.com/OP-TEE/optee_client/compare/3.8.0...3.9.0 167af141c61SJens 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 168af141c61SJens Wiklander 169af141c61SJens Wiklander[OP_TEE_optee_test_release_3_9_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.9.0 170af141c61SJens Wiklander[OP_TEE_optee_test_commits_3_9_0]: https://github.com/OP-TEE/optee_test/compare/3.8.0...3.9.0 171af141c61SJens 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 172af141c61SJens Wiklander 173af141c61SJens Wiklander[OP_TEE_build_release_3_9_0]: https://github.com/OP-TEE/build/releases/tag/3.9.0 174af141c61SJens Wiklander[OP_TEE_build_commits_3_9_0]: https://github.com/OP-TEE/build/compare/3.8.0...3.9.0 175af141c61SJens 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 176af141c61SJens Wiklander 177af141c61SJens Wiklander[linaro_swg_optee_examples_release_3_9_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.9.0 178af141c61SJens Wiklander[linaro_swg_optee_examples_commits_3_9_0]: https://github.com/linaro-swg/optee_examples/compare/3.8.0...3.9.0 179af141c61SJens 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 180af141c61SJens Wiklander 181023e3365SJerome Forissier# OP-TEE - version 3.8.0 (2020-01-24) 182023e3365SJerome Forissier 183023e3365SJerome Forissier- Links to the release pages, commits and pull requests merged into this release for: 184023e3365SJerome 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] 185023e3365SJerome 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] 186023e3365SJerome 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] 187023e3365SJerome 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] 188023e3365SJerome 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] 189023e3365SJerome Forissier 190023e3365SJerome Forissier 191023e3365SJerome Forissier[OP_TEE_optee_os_release_3_8_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.8.0 192023e3365SJerome Forissier[OP_TEE_optee_os_commits_3_8_0]: https://github.com/OP-TEE/optee_os/compare/3.7.0...3.8.0 193023e3365SJerome 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 194023e3365SJerome Forissier 195023e3365SJerome Forissier[OP_TEE_optee_client_release_3_8_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.8.0 196023e3365SJerome Forissier[OP_TEE_optee_client_commits_3_8_0]: https://github.com/OP-TEE/optee_client/compare/3.7.0...3.8.0 197023e3365SJerome 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 198023e3365SJerome Forissier 199023e3365SJerome Forissier[OP_TEE_optee_test_release_3_8_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.8.0 200023e3365SJerome Forissier[OP_TEE_optee_test_commits_3_8_0]: https://github.com/OP-TEE/optee_test/compare/3.7.0...3.8.0 201023e3365SJerome 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 202023e3365SJerome Forissier 203023e3365SJerome Forissier[OP_TEE_build_release_3_8_0]: https://github.com/OP-TEE/build/releases/tag/3.8.0 204023e3365SJerome Forissier[OP_TEE_build_commits_3_8_0]: https://github.com/OP-TEE/build/compare/3.7.0...3.8.0 205023e3365SJerome 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 206023e3365SJerome Forissier 207023e3365SJerome Forissier[linaro_swg_optee_examples_release_3_8_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.8.0 208023e3365SJerome Forissier[linaro_swg_optee_examples_commits_3_8_0]: https://github.com/linaro-swg/optee_examples/compare/3.7.0...3.8.0 209023e3365SJerome 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 210023e3365SJerome Forissier 211a2fa5018SJoakim Bech# OP-TEE - version 3.7.0 (2019-10-18) 212a2fa5018SJoakim Bech 213a2fa5018SJoakim Bech- Links to the release pages, commits and pull requests merged into this release for: 214a2fa5018SJoakim 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] 215a2fa5018SJoakim 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] 216a2fa5018SJoakim 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] 217a2fa5018SJoakim 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] 218a2fa5018SJoakim 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] 219a2fa5018SJoakim Bech 220a2fa5018SJoakim Bech 221a2fa5018SJoakim Bech[OP_TEE_optee_os_release_3_7_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.7.0 222a2fa5018SJoakim Bech[OP_TEE_optee_os_commits_3_7_0]: https://github.com/OP-TEE/optee_os/compare/3.6.0...3.7.0 223a2fa5018SJoakim 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 224a2fa5018SJoakim Bech 225a2fa5018SJoakim Bech[OP_TEE_optee_client_release_3_7_0]: https://github.com/OP-TEE/optee_client/releases/tag/3.7.0 226a2fa5018SJoakim Bech[OP_TEE_optee_client_commits_3_7_0]: https://github.com/OP-TEE/optee_client/compare/3.6.0...3.7.0 227a2fa5018SJoakim 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 228a2fa5018SJoakim Bech 229a2fa5018SJoakim Bech[OP_TEE_optee_test_release_3_7_0]: https://github.com/OP-TEE/optee_test/releases/tag/3.7.0 230a2fa5018SJoakim Bech[OP_TEE_optee_test_commits_3_7_0]: https://github.com/OP-TEE/optee_test/compare/3.6.0...3.7.0 231a2fa5018SJoakim 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 232a2fa5018SJoakim Bech 233a2fa5018SJoakim Bech[OP_TEE_build_release_3_7_0]: https://github.com/OP-TEE/build/releases/tag/3.7.0 234a2fa5018SJoakim Bech[OP_TEE_build_commits_3_7_0]: https://github.com/OP-TEE/build/compare/3.6.0...3.7.0 235a2fa5018SJoakim 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 236a2fa5018SJoakim Bech 237a2fa5018SJoakim Bech[linaro_swg_optee_examples_release_3_7_0]: https://github.com/linaro-swg/optee_examples/releases/tag/3.7.0 238a2fa5018SJoakim Bech[linaro_swg_optee_examples_commits_3_7_0]: https://github.com/linaro-swg/optee_examples/compare/3.6.0...3.7.0 239a2fa5018SJoakim 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 240a2fa5018SJoakim Bech 241f398d492SJerome Forissier# OP-TEE - version 3.6.0 (2019-07-05) 242f398d492SJerome Forissier 243f398d492SJerome Forissier- Link to the GitHub [release page][github_release_3_6_0]. 244f398d492SJerome Forissier- Links to the [commits][github_commits_3_6_0] and 245f398d492SJerome Forissier[pull requests][github_pr_3_6_0] merged into this release. 246f398d492SJerome Forissier 247f398d492SJerome Forissier[github_release_3_6_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.6.0 248f398d492SJerome Forissier[github_commits_3_6_0]: https://github.com/OP-TEE/optee_os/compare/3.5.0...3.6.0 249f398d492SJerome 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 250f398d492SJerome Forissier 2515df2a985SJoakim Bech# OP-TEE - version 3.5.0 (2019-04-26) 2525df2a985SJoakim Bech 2535df2a985SJoakim Bech- Link to the GitHub [release page][github_release_3_5_0]. 2545df2a985SJoakim Bech- Links to the [commits][github_commits_3_5_0] and 2555df2a985SJoakim Bech[pull requests][github_pr_3_5_0] merged into this release. 2565df2a985SJoakim Bech 2575df2a985SJoakim Bech[github_release_3_5_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.5.0 2585df2a985SJoakim Bech[github_commits_3_5_0]: https://github.com/OP-TEE/optee_os/compare/3.4.0...3.5.0 2595df2a985SJoakim 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 2605df2a985SJoakim Bech 261406c609bSJerome Forissier# OP-TEE - version 3.4.0 (2019-01-25) 262406c609bSJerome Forissier 263406c609bSJerome Forissier- Link to the GitHub [release page][github_release_3_4_0]. 264406c609bSJerome Forissier- Links to the [commits][github_commits_3_4_0] and 265406c609bSJerome Forissier[pull requests][github_pr_3_4_0] merged into this release. 266406c609bSJerome Forissier 267406c609bSJerome Forissier[github_release_3_4_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.4.0 268406c609bSJerome Forissier[github_commits_3_4_0]: https://github.com/OP-TEE/optee_os/compare/3.3.0...3.4.0 269406c609bSJerome 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 270406c609bSJerome Forissier 271ee595e95SJerome Forissier# OP-TEE - version 3.3.0 (2018-10-12) 272ee595e95SJerome Forissier 273ee595e95SJerome Forissier- Link to the GitHub [release page][github_release_3_3_0]. 274ee595e95SJerome Forissier- Links to the [commits][github_commits_3_3_0] and 275ee595e95SJerome Forissier[pull requests][github_pr_3_3_0] merged into this release. 276ee595e95SJerome Forissier 277ee595e95SJerome Forissier[github_release_3_3_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.3.0 278ee595e95SJerome Forissier[github_commits_3_3_0]: https://github.com/OP-TEE/optee_os/compare/3.2.0...3.3.0 279ee595e95SJerome 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 280ee595e95SJerome Forissier 28153bf1c38SJerome Forissier# OP-TEE - version 3.2.0 (2018-07-04) 28253bf1c38SJerome Forissier 28353bf1c38SJerome Forissier- Link to the GitHub [release page][github_release_3_2_0]. 28453bf1c38SJerome Forissier- Links to the [commits][github_commits_3_2_0] and 28553bf1c38SJerome Forissier[pull requests][github_pr_3_2_0] merged into this release. 28653bf1c38SJerome Forissier 28753bf1c38SJerome Forissier## Known issues 28853bf1c38SJerome Forissier 28953bf1c38SJerome Forissier* HiKey960: assertion in bget create_free_block() \[memalign() self-test\] ([#2414]) 29053bf1c38SJerome Forissier* D02: assertion '!have_spinlock()' ([#2437]) 29153bf1c38SJerome Forissier 29253bf1c38SJerome Forissier[github_commits_3_2_0]: https://github.com/OP-TEE/optee_os/compare/3.1.0...3.2.0 29353bf1c38SJerome 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 29453bf1c38SJerome Forissier[github_release_3_2_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.2.0 29553bf1c38SJerome Forissier[#2414]: https://github.com/OP-TEE/optee_os/issues/2414 29653bf1c38SJerome Forissier[#2437]: https://github.com/OP-TEE/optee_os/issues/2437 29753bf1c38SJerome Forissier 2980ab9388cSJens Wiklander# OP-TEE - version 3.1.0 (2018-04-13) 2990ab9388cSJens Wiklander 3000ab9388cSJens Wiklander- Link to the GitHub [release page][github_release_3_1_0]. 3010ab9388cSJens Wiklander- Links to the [commits][github_commits_3_1_0] and 3020ab9388cSJens Wiklander[pull requests][github_pr_3_1_0] merged into this release. 3030ab9388cSJens Wiklander 3040ab9388cSJens Wiklander[github_commits_3_1_0]: https://github.com/OP-TEE/optee_os/compare/3.0.0...3.1.0 3050ab9388cSJens 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 3060ab9388cSJens Wiklander[github_release_3_1_0]: https://github.com/OP-TEE/optee_os/releases/tag/3.1.0 3070ab9388cSJens Wiklander 3080ab9388cSJens Wiklander# OP-TEE - version 3.0.0 (2018-01-26) 30994ee4938SJerome Forissier 31094ee4938SJerome Forissier[Link][github_commits_3_0_0] to a list of all commits between this release and 31194ee4938SJerome Forissierthe previous one (2.6.0). 31294ee4938SJerome Forissier 31394ee4938SJerome ForissierAbout backwards compatibility: Trusted Applications built with OP-TEE 2.5.0 or 31494ee4938SJerome Forissierearlier will not run properly with a *debug* build of this release due 31594ee4938SJerome Forissierto commit [0e1c6e8e][commit_0e1c6e8e] ("Dump call stack on TA panic"). 31694ee4938SJerome ForissierNon-debug builds are not affected. 31794ee4938SJerome Forissier 31894ee4938SJerome Forissier## New features 31994ee4938SJerome Forissier 32094ee4938SJerome Forissier* New supported platforms: Armada 3700 ([#1946]), Poplar ([#1999]), 64-bit 32194ee4938SJerome Forissier support for FSL ls1012ardb ([#1941]), i.MX6SX Sabreauto ([#1974]). 32294ee4938SJerome Forissier* arm32: sm: init CNTVOFF ([#2052]) 32394ee4938SJerome Forissier* Debug/info/error traces: make output more compact ([#2011]) 32494ee4938SJerome Forissier* tzc380: implement new functions ([#1994]) 32594ee4938SJerome Forissier* Secure Data Path: add pseudo-TA to convert VA to PA (#1993]) 32694ee4938SJerome Forissier* Pager: use NEON AES GCM implementation ([#1959]) 32794ee4938SJerome Forissier* Crypto: add optimized AES GCM implementation using NEON ([#1949]) 32894ee4938SJerome Forissier* Add support for using secure storage for TA anti-rollback ([#1928]) 32994ee4938SJerome Forissier* Crypto: replace struct crypto_ops with function interface ([#1923], 33094ee4938SJerome Forissier [#1931]) 33194ee4938SJerome Forissier* aosp_optee.mk: define OPTEE_BIN ([#1922]) 33294ee4938SJerome Forissier* Add build option to allow concurrent execution of single-instance TAs 33394ee4938SJerome Forissier ([#1915]) 33494ee4938SJerome Forissier* Pager: support for address sanitizer ([#1856]) 33594ee4938SJerome Forissier* Pager: make memory between CFG_TEE_RAM_START and TEE load address usable by 33694ee4938SJerome Forissier pager ([#1826]) 33794ee4938SJerome Forissier 33894ee4938SJerome Forissier## Bug fixes 33994ee4938SJerome Forissier 34094ee4938SJerome Forissier* Fix crash in tee_mmu_final() on TA loading error ([#2092]) 34194ee4938SJerome Forissier* LibTomCrypt: fix issue causing invalid output when using AES CTR with 34294ee4938SJerome Forissierhardware acceleration (CFG_CRYPTO_WITH_CE) ([#2086]) 34394ee4938SJerome Forissier* pl310: fix cache sync ([#2035]) 34494ee4938SJerome Forissier* tzc380: do not write reserved bits ([#1994]) 34594ee4938SJerome Forissier* Fix potential double free in ta_open() ([#1970]) 34694ee4938SJerome Forissier* libfdt: fix undefined behaviour in fdt_offset_ptr() ([#1969]) 34794ee4938SJerome Forissier* imx_wdog: fix register access ([#1966]) 34894ee4938SJerome Forissier* Secure storage: fix potential memory leak after early return ([#1961]) 34994ee4938SJerome Forissier* LibTomCrypt: fix double free in dsa_import() ([#1963]) 35094ee4938SJerome Forissier* RPMB: fix TA independance issue in secure storage ([#1921]) 35194ee4938SJerome Forissier* RPMB: return TEE_ERROR_ACCESS_CONFLICT instead of panicking when a TA 35294ee4938SJerome Forissier attempts to create an existing persistent object without the overwrite flag 35394ee4938SJerome Forissier ([#1919]) 35494ee4938SJerome Forissier* PSCI: pass non-secure context to psci_system_suspend() ([#1916]) 35594ee4938SJerome Forissier* Fix "Argument list too long" during "make clean" ([#1897]) 35694ee4938SJerome Forissier 35794ee4938SJerome Forissier## Security fixes 35894ee4938SJerome Forissier 35994ee4938SJerome Forissier* Mitigations and hardening against the Spectre and Meltdown vulnerabilities 36094ee4938SJerome Forissier (CVE-2017-5753, CVE-2017-5715, CVE-2017-5754). 36194ee4938SJerome Forissier 36294ee4938SJerome Forissier## Known issues 36394ee4938SJerome Forissier 36494ee4938SJerome Forissier* Secure storage (REE FS): storage size not updated after 36594ee4938SJerome ForissierTEE_TruncateObjectData() ([#2094]) 36694ee4938SJerome Forissier* Possible deadlock with CFG_WITH_PAGER=y when loading a TA and not enough 36794ee4938SJerome Forissierpage tables are available in pgt_cache ([#2080]) 36894ee4938SJerome Forissier 36994ee4938SJerome Forissier## Tested on 37094ee4938SJerome Forissier 37194ee4938SJerome ForissierThe release was tested successfully on the platforms listed below. 37294ee4938SJerome Forissier 37394ee4938SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 37494ee4938SJerome Forissier* d02 37594ee4938SJerome Forissier* hikey 37694ee4938SJerome Forissier* hikey-hikey960 37794ee4938SJerome Forissier* imx-mx6ulevk 37894ee4938SJerome Forissier* imx-mx7dsabresd 37994ee4938SJerome Forissier* marvell-armada7k8k 38094ee4938SJerome Forissier* marvell-armada3700 38194ee4938SJerome Forissier* mediatek-mt8173 38294ee4938SJerome Forissier* rcar-salvator_m3 38394ee4938SJerome Forissier* rockchip-rk322x 38494ee4938SJerome Forissier* rpi3 38594ee4938SJerome Forissier* sam 38694ee4938SJerome Forissier* ti 38794ee4938SJerome Forissier* vexpress-juno 38894ee4938SJerome Forissier* vexpress-qemu_armv8a 38994ee4938SJerome Forissier* vexpress-qemu_virt 39094ee4938SJerome Forissier 39194ee4938SJerome Forissier[commit_0e1c6e8e]: https://github.com/OP-TEE/optee_os/commit/0e1c6e8e 39294ee4938SJerome Forissier[github_commits_3_0_0]: https://github.com/OP-TEE/optee_os/compare/2.6.0...3.0.0 39394ee4938SJerome Forissier[#2092]: https://github.com/OP-TEE/optee_os/pull/2092 39494ee4938SJerome Forissier[#2086]: https://github.com/OP-TEE/optee_os/pull/2086 39594ee4938SJerome Forissier[#2094]: https://github.com/OP-TEE/optee_os/issues/2094 39694ee4938SJerome Forissier[#2080]: https://github.com/OP-TEE/optee_os/issues/2080 39794ee4938SJerome Forissier[#2052]: https://github.com/OP-TEE/optee_os/pull/2052 39894ee4938SJerome Forissier[#2035]: https://github.com/OP-TEE/optee_os/pull/2035 39994ee4938SJerome Forissier[#2011]: https://github.com/OP-TEE/optee_os/pull/2011 40094ee4938SJerome Forissier[#1999]: https://github.com/OP-TEE/optee_os/pull/1999 40194ee4938SJerome Forissier[#1994]: https://github.com/OP-TEE/optee_os/pull/1994 40294ee4938SJerome Forissier[#1993]: https://github.com/OP-TEE/optee_os/pull/1993 40394ee4938SJerome Forissier[#1974]: https://github.com/OP-TEE/optee_os/pull/1974 40494ee4938SJerome Forissier[#1970]: https://github.com/OP-TEE/optee_os/pull/1970 40594ee4938SJerome Forissier[#1969]: https://github.com/OP-TEE/optee_os/pull/1969 40694ee4938SJerome Forissier[#1966]: https://github.com/OP-TEE/optee_os/pull/1966 40794ee4938SJerome Forissier[#1963]: https://github.com/OP-TEE/optee_os/pull/1963 40894ee4938SJerome Forissier[#1961]: https://github.com/OP-TEE/optee_os/pull/1961 40994ee4938SJerome Forissier[#1959]: https://github.com/OP-TEE/optee_os/pull/1959 41094ee4938SJerome Forissier[#1949]: https://github.com/OP-TEE/optee_os/pull/1949 41194ee4938SJerome Forissier[#1946]: https://github.com/OP-TEE/optee_os/pull/1946 41294ee4938SJerome Forissier[#1941]: https://github.com/OP-TEE/optee_os/pull/1941 41394ee4938SJerome Forissier[#1931]: https://github.com/OP-TEE/optee_os/pull/1931 41494ee4938SJerome Forissier[#1928]: https://github.com/OP-TEE/optee_os/pull/1928 41594ee4938SJerome Forissier[#1923]: https://github.com/OP-TEE/optee_os/pull/1923 41694ee4938SJerome Forissier[#1922]: https://github.com/OP-TEE/optee_os/pull/1922 41794ee4938SJerome Forissier[#1921]: https://github.com/OP-TEE/optee_os/pull/1921 41894ee4938SJerome Forissier[#1919]: https://github.com/OP-TEE/optee_os/pull/1919 41994ee4938SJerome Forissier[#1916]: https://github.com/OP-TEE/optee_os/pull/1916 42094ee4938SJerome Forissier[#1915]: https://github.com/OP-TEE/optee_os/pull/1915 42194ee4938SJerome Forissier[#1897]: https://github.com/OP-TEE/optee_os/pull/1897 42294ee4938SJerome Forissier[#1856]: https://github.com/OP-TEE/optee_os/pull/1856 42394ee4938SJerome Forissier[#1826]: https://github.com/OP-TEE/optee_os/pull/1826 42494ee4938SJerome Forissier 4256d57389fSJerome Forissier# OP-TEE - version 2.6.0 4266d57389fSJerome Forissier 4276d57389fSJerome Forissier[Link][github_commits_2_6_0] to a list of all commits between this release and 4286d57389fSJerome Forissierthe previous one (2.5.0). 4296d57389fSJerome Forissier 4306d57389fSJerome Forissier## New features 4316d57389fSJerome Forissier 4326d57389fSJerome Forissier* New supported platforms: Atmel SAMA5 ([#1714]), HiSilicon HiKey960 ([#1684]), 4336d57389fSJerome Forissier Rockchip RK322X ([#1666]), NXP LS1043A-RDB/LS1046A-RDB ([#1787]), Marvell 4346d57389fSJerome Forissier Armada 70x0/80x0 ([#1807]). 4356d57389fSJerome Forissier* Dynamic shared memory (non-contiguous, non-secure memory can be mapped into 4366d57389fSJerome Forissier Trusted Applications VA space) ([#1631]) 4376d57389fSJerome Forissier* Dump TA call stack on panic ([#1858]) 4386d57389fSJerome Forissier* i.MX: PSCI reset ([#1849]) 4396d57389fSJerome Forissier* plat-ti: AM43xx: suspend/resume support ([#1822]) 4406d57389fSJerome Forissier* QEMU SMP support ([#1820]) 4416d57389fSJerome Forissier* plat-ti: AM43xx: disable TRNG ([#1816]) 4426d57389fSJerome Forissier* plat-ti: enable Secure Data Path by default ([#1815]) 4436d57389fSJerome Forissier* Improve symbolize.py ([#1778], [#1767], [#1766]) 4446d57389fSJerome Forissier* Early TAs (TAs linked in tee.bin) ([#1733]) 4456d57389fSJerome Forissier* Suspend/resume framework for arm32 and imx7d support ([#1729]) 4466d57389fSJerome Forissier* RK322X PSCI version, features and suspend support ([#1720]) 4476d57389fSJerome Forissier* arm32: handle aborts in system mode ([#1703]) 4486d57389fSJerome Forissier* i.MX: add SNVS SRTC support ([#1700]) 4496d57389fSJerome Forissier* GCC7 support ([#1693]) 4506d57389fSJerome Forissier* Improve detection of programming errors in locking code ([#1671], [#1670]) 4516d57389fSJerome Forissier* Support TEE RAM size larger than page directory size ([#1669]) 4526d57389fSJerome Forissier 4536d57389fSJerome Forissier## Removed features 4546d57389fSJerome Forissier 4556d57389fSJerome Forissier* Remove TUI code ([#1842]) 4566d57389fSJerome Forissier 4576d57389fSJerome Forissier## Bug fixes 4586d57389fSJerome Forissier 4596d57389fSJerome Forissier* Add missing synchronization barrier in core_mmu_map_pages() ([#1827]) 4606d57389fSJerome Forissier* Secure storage: REE FS: fix bug in error path ([#1801]) 4616d57389fSJerome Forissier* ASAN bug fixes ([#1799]) 4626d57389fSJerome Forissier* Fix race in core_mmu_user_mapping_is_active() ([#1785]) 4636d57389fSJerome Forissier* libutee: printf() and puts() fixes, add putchar() ([#1759], [#1754]) 4646d57389fSJerome Forissier* arm32: GICv3: fix FIQ masking in IRQ/ABT/SVC/UND handlers ([#1748]) 4656d57389fSJerome Forissier* arm32: preserve r12 in native_intr_handler() ([#1682]) 4666d57389fSJerome Forissier* arm64: fix print_kernel_stack() ([#1664]) 4676d57389fSJerome Forissier* benchmark: fix core data-abort ([#1658]) 4686d57389fSJerome Forissier 4696d57389fSJerome Forissier## Security fixes or enhancements 4706d57389fSJerome Forissier 4716d57389fSJerome Forissier* crypto: fix software PRNG weaknesses 4726d57389fSJerome Forissier ([OP-TEE-2017-0001][OP-TEE-2017-0001]) ([#1843]) 4736d57389fSJerome Forissier 4746d57389fSJerome Forissier## Tested on 4756d57389fSJerome Forissier 47694ee4938SJerome ForissierThe release was tested successfully on the platforms listed below. 4776d57389fSJerome ForissierIf a platform is not listed, it means the release was not tested on this 4786d57389fSJerome Forissierplatform. 4796d57389fSJerome Forissier 4806d57389fSJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 4816d57389fSJerome Forissier* d02 4826d57389fSJerome Forissier* hikey 4836d57389fSJerome Forissier* hikey-hikey960 4846d57389fSJerome Forissier* imx-mx6ulevk 4856d57389fSJerome Forissier* imx-mx7dsabresd 4866d57389fSJerome Forissier* ls-ls1021a??? (single core) 4876d57389fSJerome Forissier* ls-ls1043ardb 4886d57389fSJerome Forissier* ls-ls1046ardb 4896d57389fSJerome Forissier* mediatek-mt8173 4906d57389fSJerome Forissier* rcar 4916d57389fSJerome Forissier* rockchip-rk322x 4926d57389fSJerome Forissier* rpi3 4936d57389fSJerome Forissier* sam 4946d57389fSJerome Forissier* stm-b2260 4956d57389fSJerome Forissier* stm-cannes 4966d57389fSJerome Forissier* ti-??? 4976d57389fSJerome Forissier* vexpress-fvp 4986d57389fSJerome Forissier* vexpress-juno 4996d57389fSJerome Forissier* vexpress-qemu_armv8a 5006d57389fSJerome Forissier* vexpress-qemu_virt 5016d57389fSJerome Forissier 50294ee4938SJerome Forissier[github_commits_2_6_0]: https://github.com/OP-TEE/optee_os/compare/2.5.0...2.6.0 5036d57389fSJerome Forissier[#1858]: https://github.com/OP-TEE/optee_os/issues/1858 5046d57389fSJerome Forissier[#1849]: https://github.com/OP-TEE/optee_os/issues/1849 5056d57389fSJerome Forissier[#1843]: https://github.com/OP-TEE/optee_os/issues/1843 5066d57389fSJerome Forissier[#1842]: https://github.com/OP-TEE/optee_os/issues/1842 5076d57389fSJerome Forissier[#1827]: https://github.com/OP-TEE/optee_os/issues/1827 5086d57389fSJerome Forissier[#1822]: https://github.com/OP-TEE/optee_os/issues/1822 5096d57389fSJerome Forissier[#1820]: https://github.com/OP-TEE/optee_os/issues/1820 5106d57389fSJerome Forissier[#1816]: https://github.com/OP-TEE/optee_os/issues/1816 5116d57389fSJerome Forissier[#1815]: https://github.com/OP-TEE/optee_os/issues/1815 5126d57389fSJerome Forissier[#1807]: https://github.com/OP-TEE/optee_os/issues/1807 5136d57389fSJerome Forissier[#1801]: https://github.com/OP-TEE/optee_os/issues/1801 5146d57389fSJerome Forissier[#1799]: https://github.com/OP-TEE/optee_os/issues/1799 5156d57389fSJerome Forissier[#1787]: https://github.com/OP-TEE/optee_os/issues/1787 5166d57389fSJerome Forissier[#1785]: https://github.com/OP-TEE/optee_os/issues/1785 5176d57389fSJerome Forissier[#1778]: https://github.com/OP-TEE/optee_os/issues/1778 5186d57389fSJerome Forissier[#1767]: https://github.com/OP-TEE/optee_os/issues/1767 5196d57389fSJerome Forissier[#1766]: https://github.com/OP-TEE/optee_os/issues/1766 5206d57389fSJerome Forissier[#1759]: https://github.com/OP-TEE/optee_os/issues/1759 5216d57389fSJerome Forissier[#1754]: https://github.com/OP-TEE/optee_os/issues/1754 5226d57389fSJerome Forissier[#1748]: https://github.com/OP-TEE/optee_os/issues/1748 5236d57389fSJerome Forissier[#1733]: https://github.com/OP-TEE/optee_os/issues/1733 5246d57389fSJerome Forissier[#1729]: https://github.com/OP-TEE/optee_os/issues/1729 5256d57389fSJerome Forissier[#1720]: https://github.com/OP-TEE/optee_os/issues/1720 5266d57389fSJerome Forissier[#1714]: https://github.com/OP-TEE/optee_os/issues/1714 5276d57389fSJerome Forissier[#1703]: https://github.com/OP-TEE/optee_os/issues/1703 5286d57389fSJerome Forissier[#1700]: https://github.com/OP-TEE/optee_os/issues/1700 5296d57389fSJerome Forissier[#1693]: https://github.com/OP-TEE/optee_os/issues/1693 5306d57389fSJerome Forissier[#1684]: https://github.com/OP-TEE/optee_os/issues/1684 5316d57389fSJerome Forissier[#1682]: https://github.com/OP-TEE/optee_os/issues/1682 5326d57389fSJerome Forissier[#1671]: https://github.com/OP-TEE/optee_os/issues/1671 5336d57389fSJerome Forissier[#1670]: https://github.com/OP-TEE/optee_os/issues/1670 5346d57389fSJerome Forissier[#1669]: https://github.com/OP-TEE/optee_os/issues/1669 5356d57389fSJerome Forissier[#1666]: https://github.com/OP-TEE/optee_os/issues/1666 5366d57389fSJerome Forissier[#1664]: https://github.com/OP-TEE/optee_os/issues/1664 5376d57389fSJerome Forissier[#1658]: https://github.com/OP-TEE/optee_os/issues/1658 5386d57389fSJerome Forissier[#1631]: https://github.com/OP-TEE/optee_os/issues/1631 5396d57389fSJerome Forissier[OP-TEE-2017-0001]: https://www.op-tee.org/security-advisories/ 5406d57389fSJerome Forissier 5415d8aaa04SJerome Forissier# OP-TEE - version 2.5.0 5425d8aaa04SJerome Forissier 5435d8aaa04SJerome Forissier[Link][github_commits_2_5_0] to a list of all commits between this release and 5445d8aaa04SJerome Forissierthe previous one (2.4.0). 5455d8aaa04SJerome Forissier 5465d8aaa04SJerome Forissier## New features 5475d8aaa04SJerome Forissier 5485d8aaa04SJerome Forissier* New supported platform: i.MX7D ([#1639]) 5495d8aaa04SJerome Forissier* Secure storage: anti-rollback protection for REE FS using RPMB FS ([#1630]) 5505d8aaa04SJerome Forissier* Assign non-secure DDR configuration from DT if CFG_DT=y ([#1623]) 5515d8aaa04SJerome Forissier* Add new image format: split image into three separate binaries suitable for 5525d8aaa04SJerome Forissier upcoming ARM Trusted Firmware ([#1589]). 5535d8aaa04SJerome Forissier* Make alignment check configurable ([#1586]) 5545d8aaa04SJerome Forissier* drivers: add TZC380 driver ([#1578]) 5555d8aaa04SJerome Forissier* plat-imx: PSCI CPU off ([#1577]) 5565d8aaa04SJerome Forissier* 64-bit paging on QEMU v8 and HiKey ([#1575], [#1592]) 5575d8aaa04SJerome Forissier* Benchmark framework ([#1365]) 5585d8aaa04SJerome Forissier* Dump call stack of user TAs on abort ([#1552]) 5595d8aaa04SJerome Forissier* plat-hikey: enable Secure Data Path ([#1440]) 5605d8aaa04SJerome Forissier* Add interface to load and decrypt/authenticate user TAs ([#1513]) 5615d8aaa04SJerome Forissier* plat-ti: add secure paging support ([#1493]) 5625d8aaa04SJerome Forissier* plat-ti: add OTP hardware key support ([#1492]) 5635d8aaa04SJerome Forissier* Support ARM GICv3 ([#1465]) 5645d8aaa04SJerome Forissier 5655d8aaa04SJerome Forissier## Removed features 5665d8aaa04SJerome Forissier 5675d8aaa04SJerome Forissier* stm-orly2 is not supported anymore ([#1650]) 5685d8aaa04SJerome Forissier* Remove secure storage based on SQL FS (`CFG_SQL_FS=y`) ([#1490]) 5695d8aaa04SJerome Forissier* Remove support for mapping user TAs with 1 MiB or 2 MiB granularity 5705d8aaa04SJerome Forissier (`CFG_SMALL_PAGE_USER_TA=n`) ([#1559]). TAs are always mapped using small 5715d8aaa04SJerome Forissier pages. 5725d8aaa04SJerome Forissier 5735d8aaa04SJerome Forissier## Bug fixes 5745d8aaa04SJerome Forissier 5755d8aaa04SJerome Forissier* Reduce size of non-pageable code ([#1621]) 5765d8aaa04SJerome Forissier* Ignore `TA_FLAG_MULTI_SESSION` and `TA_FLAG_INSTANCE_KEEP_ALIVE` when 5775d8aaa04SJerome Forissier `TA_FLAG_SINGLE_INSTANCE` is not set ([#1574]) 5785d8aaa04SJerome Forissier* libutee: remove buffering for AES GCM (PR#1573) and AES CTR ([#1580]) 5795d8aaa04SJerome Forissier* Fix ROUNDUP()/ROUNDDOWN() macros ([#1519]) 5805d8aaa04SJerome Forissier* Do not touch other bits in GICD_CTLR ([#1508]) 5815d8aaa04SJerome Forissier* Fix build issue with `DEBUG=y` and `CFG_TEE_CORE_LOG_LEVEL=0` ([#1502]) 5825d8aaa04SJerome Forissier* crypto: do not restrict hash size when algorithm is ECDSA ([#1497]) 5835d8aaa04SJerome Forissier 5845d8aaa04SJerome Forissier## Security fixes or enhancements 5855d8aaa04SJerome Forissier 5865d8aaa04SJerome Forissier- crypto: fix RSA key leakage after fault injection attack 5875d8aaa04SJerome Forissier ([OP-TEE-2016-0003][OP-TEE-2016-0003]) ([#1610]) 5885d8aaa04SJerome Forissier* crypto: fix RSA key leakage after side channel attack 5895d8aaa04SJerome Forissier ([OP-TEE-2016-0002][OP-TEE-2016-0002]) ([#1610]) 5905d8aaa04SJerome Forissier* Make pager aliased pages not always writable ([#1551]) 5915d8aaa04SJerome Forissier* Support for no-exec RO and RW data ([#1459], [#1550]) 5925d8aaa04SJerome Forissier 5935d8aaa04SJerome Forissier## New issues 5945d8aaa04SJerome Forissier 5955d8aaa04SJerome Forissier* armv7: some platform-specific code (`plat_cpu_reset_early()`) overwrites 5965d8aaa04SJerome ForissierSCTLR bits configured by generic code. This affects alignment checks (`SCTLR.A`) 5975d8aaa04SJerome Forissierand write-implies-no-exec (`SCTLR.WXN`, `SCTLR.UWXN`), which can therefore not 5985d8aaa04SJerome Forissierbe configured via the compile-time `CFG_` variables. 5995d8aaa04SJerome Forissier* armv7: plat-imx: Cortex-A9 cores should enable branch prediction (`SCLTR.Z`) 6005d8aaa04SJerome Forissierfor improved performance. 6015d8aaa04SJerome Forissier* [#1656] qemu_armv8a: init hangs when secure data path and pager are both 6025d8aaa04SJerome Forissier enabled. 6035d8aaa04SJerome Forissier 6045d8aaa04SJerome Forissier## Tested on 6055d8aaa04SJerome Forissier 6065d8aaa04SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with 6075d8aaa04SJerome Forissierits default configuration, while _extended_ means it was run successfully 6085d8aaa04SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite 6095d8aaa04SJerome Forissierv1.1.0.4. 6105d8aaa04SJerome Forissier 6115d8aaa04SJerome ForissierIf a platform is not listed, it means the release was not tested on this 6125d8aaa04SJerome Forissierplatform. 6135d8aaa04SJerome Forissier 6145d8aaa04SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 6155d8aaa04SJerome Forissier* d02: extended 6165d8aaa04SJerome Forissier* hikey: extended 6175d8aaa04SJerome Forissier* imx-mx6ulevk: standard 6185d8aaa04SJerome Forissier* imx-mx6ullevk: standard 6195d8aaa04SJerome Forissier* imx-mx7dsabresd: standard 6205d8aaa04SJerome Forissier* ls-ls1021atwr: standard 6215d8aaa04SJerome Forissier* mediatek-mt8173: standard 6225d8aaa04SJerome Forissier* rcar-h3: standard 6235d8aaa04SJerome Forissier* rpi3: standard 6245d8aaa04SJerome Forissier* stm-b2260: extended 6255d8aaa04SJerome Forissier* stm-cannes: extended 6265d8aaa04SJerome Forissier* ti-am43xx: standard 6275d8aaa04SJerome Forissier* ti-am57xx: standard 6285d8aaa04SJerome Forissier* ti-dra7xx: standard 6295d8aaa04SJerome Forissier* vexpress-fvp: standard 6305d8aaa04SJerome Forissier* vexpress-juno: standard 6315d8aaa04SJerome Forissier* vexpress-qemu_armv8a: standard 6325d8aaa04SJerome Forissier* vexpress-qemu_virt: standard 6335d8aaa04SJerome Forissier 6345d8aaa04SJerome Forissier[github_commits_2_5_0]: https://github.com/OP-TEE/optee_os/compare/2.4.0...2.5.0-rc1 6355d8aaa04SJerome Forissier[#1656]: https://github.com/OP-TEE/optee_os/issues/1656 6365d8aaa04SJerome Forissier[#1650]: https://github.com/OP-TEE/optee_os/pull/1650 6375d8aaa04SJerome Forissier[#1639]: https://github.com/OP-TEE/optee_os/pull/1639 6385d8aaa04SJerome Forissier[#1630]: https://github.com/OP-TEE/optee_os/pull/1630 6395d8aaa04SJerome Forissier[#1623]: https://github.com/OP-TEE/optee_os/pull/1623 6405d8aaa04SJerome Forissier[#1621]: https://github.com/OP-TEE/optee_os/pull/1621 6415d8aaa04SJerome Forissier[#1610]: https://github.com/OP-TEE/optee_os/pull/1610 6425d8aaa04SJerome Forissier[#1592]: https://github.com/OP-TEE/optee_os/pull/1592 6435d8aaa04SJerome Forissier[#1589]: https://github.com/OP-TEE/optee_os/pull/1589 6445d8aaa04SJerome Forissier[#1586]: https://github.com/OP-TEE/optee_os/pull/1586 6455d8aaa04SJerome Forissier[#1580]: https://github.com/OP-TEE/optee_os/pull/1580 6465d8aaa04SJerome Forissier[#1578]: https://github.com/OP-TEE/optee_os/pull/1578 6475d8aaa04SJerome Forissier[#1577]: https://github.com/OP-TEE/optee_os/pull/1577 6485d8aaa04SJerome Forissier[#1574]: https://github.com/OP-TEE/optee_os/pull/1574 6495d8aaa04SJerome Forissier[#1559]: https://github.com/OP-TEE/optee_os/pull/1559 6505d8aaa04SJerome Forissier[#1551]: https://github.com/OP-TEE/optee_os/pull/1551 6515d8aaa04SJerome Forissier[#1550]: https://github.com/OP-TEE/optee_os/pull/1550 6525d8aaa04SJerome Forissier[#1519]: https://github.com/OP-TEE/optee_os/pull/1519 6535d8aaa04SJerome Forissier[#1502]: https://github.com/OP-TEE/optee_os/pull/1502 6545d8aaa04SJerome Forissier[#1365]: https://github.com/OP-TEE/optee_os/pull/1365 6555d8aaa04SJerome Forissier[#1552]: https://github.com/OP-TEE/optee_os/pull/1552 6565d8aaa04SJerome Forissier[#1513]: https://github.com/OP-TEE/optee_os/pull/1513 6575d8aaa04SJerome Forissier[#1508]: https://github.com/OP-TEE/optee_os/pull/1508 6585d8aaa04SJerome Forissier[#1493]: https://github.com/OP-TEE/optee_os/pull/1493 6595d8aaa04SJerome Forissier[#1497]: https://github.com/OP-TEE/optee_os/pull/1497 6605d8aaa04SJerome Forissier[#1492]: https://github.com/OP-TEE/optee_os/pull/1492 6615d8aaa04SJerome Forissier[#1490]: https://github.com/OP-TEE/optee_os/pull/1490 6625d8aaa04SJerome Forissier[#1465]: https://github.com/OP-TEE/optee_os/pull/1465 6635d8aaa04SJerome Forissier[#1459]: https://github.com/OP-TEE/optee_os/pull/1459 6645d8aaa04SJerome Forissier[#1440]: https://github.com/OP-TEE/optee_os/pull/1440 6655d8aaa04SJerome Forissier[OP-TEE-2016-0003]: https://www.op-tee.org/security-advisories/ 6665d8aaa04SJerome Forissier[OP-TEE-2016-0002]: https://www.op-tee.org/security-advisories/ 6675d8aaa04SJerome Forissier 668702609a7SJerome Forissier# OP-TEE - version 2.4.0 669702609a7SJerome Forissier 670702609a7SJerome Forissier[Link][github_commits_2_4_0] to a list of all commits between this release and 671702609a7SJerome Forissierthe previous one (2.3.0). 672702609a7SJerome Forissier 673702609a7SJerome ForissierPlease note: this release is API-compatible with the previous one, but the 674702609a7SJerome ForissierSecure Storage internal format for the REE and SQL FS is not compatible due to 675702609a7SJerome Forissiercommits [a238b74][commit_a238b74] ("core: REE FS: use the new hash tree 676702609a7SJerome Forissierinterface") and [44e900e][commit_44e900e] ("core: SQL FS: use the new hash tree 677702609a7SJerome Forissierinterface"). 678702609a7SJerome Forissier 679702609a7SJerome Forissier## New features 680702609a7SJerome Forissier 681702609a7SJerome Forissier* Add porting guidelines 682702609a7SJerome Forissier 683702609a7SJerome Forissier* Add support for Secure Data Path which allows Client and Trusted Applications 684702609a7SJerome Forissier to share references to secure memory 685702609a7SJerome Forissier 686702609a7SJerome Forissier* New supported platform: Texas Instruments AM57xx (`PLATFORM=ti-am57xx`) 687702609a7SJerome Forissier 688702609a7SJerome Forissier* ARMv7-A: add support for platform services in secure monitor and add these 689702609a7SJerome Forissier services for the DRA7xx platform 690702609a7SJerome Forissier 691702609a7SJerome Forissier* SPI framework and PL022 driver cleanup and improvements 692702609a7SJerome Forissier 693702609a7SJerome Forissier* Use CNTPCT (when available) to add entropy to the software PRNG 694702609a7SJerome Forissier 695702609a7SJerome Forissier* Add GlobalPlatform Socket API for UDP and TCP (IPv4 and IPv6) 696702609a7SJerome Forissier 697702609a7SJerome Forissier* DRA7: add TRNG driver, enable GICv2 driver 698702609a7SJerome Forissier 699702609a7SJerome Forissier* Support load address larger than 4G 700702609a7SJerome Forissier 701702609a7SJerome Forissier* libutee: preserve error code when calling TEE_Panic() for easier 702702609a7SJerome Forissier troubleshooting 703702609a7SJerome Forissier 704702609a7SJerome Forissier* Support TA profiling with gprof (-pg compiler switch) 705702609a7SJerome Forissier 706702609a7SJerome Forissier* Optimize the ELF loader for TAs when pager is enabled 707702609a7SJerome Forissier 708702609a7SJerome Forissier* Update documentation 709702609a7SJerome Forissier 710702609a7SJerome Forissier* Add paged secure shared memory that can be transferred between TAs as 711702609a7SJerome Forissier needed 712702609a7SJerome Forissier 713702609a7SJerome Forissier* Introduce MOBJ abstraction 714702609a7SJerome Forissier 715702609a7SJerome Forissier* i.MX6: add PSCI "on" function 716702609a7SJerome Forissier 717702609a7SJerome Forissier* arm32: introduce PSCI framework 718702609a7SJerome Forissier 719702609a7SJerome Forissier## Bug fixes 720702609a7SJerome Forissier 721702609a7SJerome Forissier* Secure storage: improve integrity checking of the REE and SQL filesystems by 722702609a7SJerome Forissier adding a hash tree on the internal data structures. Any external modification 723702609a7SJerome Forissier is detected, except full rollback. Fixes [#1188][issue1188]. 724702609a7SJerome Forissier 725702609a7SJerome Forissier* The linux driver will set the 'privileged' flag (TEE_GEN_CAP_PRIVILEGED) on 726702609a7SJerome Forissier the device intended for use by tee-supplicant. Fixes [#1199][issue1199]. 727702609a7SJerome Forissier 728702609a7SJerome Forissier* RPMB: don't try to program the RPMB key by default 729702609a7SJerome Forissier 730702609a7SJerome Forissier* Fix "make clean" error cases 731702609a7SJerome Forissier 732702609a7SJerome Forissier* Fix issue when resetting persistent storage enumerator [#1332][issue1332] 733702609a7SJerome Forissier 734702609a7SJerome Forissier* Fix TA panic when doing AES CTS with specific buffer sizes 735702609a7SJerome Forissier [#1203][issue1203]. 736702609a7SJerome Forissier 737702609a7SJerome Forissier## Known issues 738702609a7SJerome Forissier 739702609a7SJerome Forissier* On RPi3 xtest sometimes stall (rcu_sched self-detected stall on CPU) [#1353][issue1353] 740702609a7SJerome Forissier* For multi-core PSCI support is to be added for ls1021atwr in OP-TEE. 741702609a7SJerome Forissier* USB keyboard cannot be used to stop the u-boot timeout ([build issue131]). 742702609a7SJerome Forissier* Travis service (build.git) seems unstable from time to time. 743702609a7SJerome Forissier 744702609a7SJerome Forissier## Tested on 745702609a7SJerome Forissier 746702609a7SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with 747702609a7SJerome Forissierits default configuration, while _extended_ means it was run successfully 748702609a7SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite 749702609a7SJerome Forissierv1.1.0.4. 750702609a7SJerome Forissier 751702609a7SJerome ForissierIf a platform is not listed, it means the release was not tested on this 752702609a7SJerome Forissierplatform. 753702609a7SJerome Forissier 754702609a7SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 755702609a7SJerome Forissier* d02: extended 756702609a7SJerome Forissier* hikey: extended 757702609a7SJerome Forissier* imx-mx6ulevk: standard 758702609a7SJerome Forissier* ls-ls1021atwr: standard (single core) 759702609a7SJerome Forissier* mediatek-mt8173: standard 760702609a7SJerome Forissier* rcar-h3: standard 761702609a7SJerome Forissier* rpi3: standard 762702609a7SJerome Forissier* stm-b2260: extended 763702609a7SJerome Forissier* ti-dra7xx: standard 764702609a7SJerome Forissier* vexpress-fvp: standard 765702609a7SJerome Forissier* vexpress-juno: standard 766702609a7SJerome Forissier* vexpress-qemu_armv8a: standard 767702609a7SJerome Forissier* vexpress-qemu_virt: standard 768702609a7SJerome Forissier* zynqmp-zc1751_dc1: standard 769702609a7SJerome Forissier* zynqmp-zc1751_dc2: standard 770702609a7SJerome Forissier* zynqmp-zcu102: standard 771702609a7SJerome Forissier 772702609a7SJerome Forissier[github_commits_2_4_0]: https://github.com/OP-TEE/optee_os/compare/2.3.0...2.4.0 773702609a7SJerome Forissier[issue1332]: https://github.com/OP-TEE/optee_os/issues/1332 774702609a7SJerome Forissier[issue1353]: https://github.com/OP-TEE/optee_os/issues/1353 775702609a7SJerome Forissier[build issue131]: https://github.com/OP-TEE/build/issues/131 776702609a7SJerome Forissier[commit_a238b74]: https://github.com/OP-TEE/optee_os/commit/a238b744b1b3 777702609a7SJerome Forissier[commit_44e900e]: https://github.com/OP-TEE/optee_os/commit/44e900eabfc1 778702609a7SJerome Forissier 77928fcee17SJerome Forissier# OP-TEE - version 2.3.0 78028fcee17SJerome Forissier 78128fcee17SJerome Forissier[Link][github_commits_2_3_0] to a list of all commits between this release and 78228fcee17SJerome Forissierthe previous one (2.2.0). 78328fcee17SJerome Forissier 78428fcee17SJerome ForissierPlease note: this release is API-compatible with the previous one, but the 78528fcee17SJerome ForissierSecure Storage internal format for the REE FS is not compatible due to commit 78628fcee17SJerome Forissier[361fb3e][commit_361fb3e] ("core: REE FS: use a single file per object"). 78728fcee17SJerome Forissier 78828fcee17SJerome Forissier[commit_361fb3e]: https://github.com/OP-TEE/optee_os/commit/361fb3e 78928fcee17SJerome Forissier 79028fcee17SJerome Forissier## New features 79128fcee17SJerome Forissier 79228fcee17SJerome Forissier* New supported platform: Xilinx Zynq 7000 ZC702 (`PLATFORM=zynq7k-zc702`) 79328fcee17SJerome Forissier 79428fcee17SJerome Forissier* Add debug assertions to spinlocks and mutexes 79528fcee17SJerome Forissier 79628fcee17SJerome Forissier* Add more CP15 register access macros for Cortex-A9 79728fcee17SJerome Forissier 79828fcee17SJerome Forissier* ARMv7-A: redesign secure monitor to make it easier to register services 79928fcee17SJerome Forissier 80028fcee17SJerome Forissier* ARMv7-A: cleanup boot arguments 80128fcee17SJerome Forissier 80228fcee17SJerome Forissier* libutee: extend `TEE_CheckMemoryAccessRights()` with 80328fcee17SJerome Forissier `TEE_MEMORY_ACCESS_SECURE` and `TEE_MEMORY_ACCESS_NONSECURE` 80428fcee17SJerome Forissier 80528fcee17SJerome Forissier* plat-hikey: enable SPI by default and add sample test code 80628fcee17SJerome Forissier 80728fcee17SJerome Forissier* Consider `CFLAGS_ta_arm64` and `CFLAGS_ta_arm32` when building TAs 80828fcee17SJerome Forissier 80928fcee17SJerome Forissier* Secure storage refactoring 81028fcee17SJerome Forissier - Simplify interface with tee-supplicant. Minimize round trips with normal 81128fcee17SJerome Forissier world, especially by adding a cache for FS RPC payload data. 81228fcee17SJerome Forissier - REE FS: use a single file per object, remove block cache. 81328fcee17SJerome Forissier 81428fcee17SJerome Forissier* Print call stack in panic() 81528fcee17SJerome Forissier 81628fcee17SJerome Forissier## Bug fixes 81728fcee17SJerome Forissier 81828fcee17SJerome Forissier* Fix UUID encoding when communicating with normal world (use big endian 81928fcee17SJerome Forissier mode instead of native endianness). Related to this, the string format 82028fcee17SJerome Forissier for UUIDs has changed in tee-supplicant, so that TA file names now follow 82128fcee17SJerome Forissier the format defined in RFC4122 (a missing hyphen was added). The old format 82228fcee17SJerome Forissier is still supported, but deprecated, and will likely be removed with the 82328fcee17SJerome Forissier next major release. 82428fcee17SJerome Forissier 82528fcee17SJerome Forissier* Drop write permission to non-writable ELF segments after TA loading is 82628fcee17SJerome Forissier complete. 82728fcee17SJerome Forissier 82828fcee17SJerome Forissier* mm: fix confusing memory mapping debug traces 82928fcee17SJerome Forissier 83028fcee17SJerome Forissier* plat-ti: fix issues with MMU mapping 83128fcee17SJerome Forissier 83228fcee17SJerome Forissier* crypto: fix clearing of big numbers 83328fcee17SJerome Forissier 83428fcee17SJerome Forissier* build: allow spaces and double quotes in CFG_ variables 83528fcee17SJerome Forissier 83628fcee17SJerome Forissier* mm: use paddr_t to support both 32- and 64-bit architectures properly. 83728fcee17SJerome Forissier Resolves 32-bit truncation error when pool is at top of 32 bit address 83828fcee17SJerome Forissier space on 64-bit architecture. 83928fcee17SJerome Forissier 84028fcee17SJerome Forissier* plat-stm: support pager. Fix pager on ARMv7-A SMP boards. 84128fcee17SJerome Forissier 84228fcee17SJerome Forissier* Fix debug output of Trusted Applications (remove "ERROR: TEE-CORE:" prefix) 84328fcee17SJerome Forissier 84428fcee17SJerome Forissier* Do not consider TA memref parameters as TA private memory 84528fcee17SJerome Forissier 84628fcee17SJerome Forissier* crypto: fix `cipher_final()` which would not call `cbc_done()` for CBC_MAC 84728fcee17SJerome Forissier algorithms 84828fcee17SJerome Forissier 84928fcee17SJerome Forissier* fix for 16-way PL310 85028fcee17SJerome Forissier 85128fcee17SJerome Forissier* arm32: fix call stack unwinding (`print_stack()`) 85228fcee17SJerome Forissier 85328fcee17SJerome Forissier* arm32: fix spinlock assembly code 85428fcee17SJerome Forissier 85528fcee17SJerome Forissier* plat-stm, plat-imx: fix SCR initalization 85628fcee17SJerome Forissier 85728fcee17SJerome Forissier* Fix user L1 MMU entries calculation (non-LPAE), allowing TTBCR.N values 85828fcee17SJerome Forissier other than 7. 85928fcee17SJerome Forissier 86028fcee17SJerome Forissier* mtk-mt8173: fix panic caused by incorrect size of SHMEM 86128fcee17SJerome Forissier 86228fcee17SJerome Forissier* plat-stm: fix RNG driver (non-flat mapping) 86328fcee17SJerome Forissier 86428fcee17SJerome Forissier## Known issues 86528fcee17SJerome Forissier 86628fcee17SJerome Forissier* New issues open on GitHub 86728fcee17SJerome Forissier * [#1203][issue1203] AES-CTS mode will fail when inlen=0x100, in_incr=0x80 86828fcee17SJerome Forissier * [#1199][issue1199] Both tee and teepriv reported GlobalPlatform compliant 86928fcee17SJerome Forissier * [#1188][issue1188] Secure storage (SQL FS and REE FS): blocks not tied to 87028fcee17SJerome Forissier current meta header 87128fcee17SJerome Forissier * [#1172][issue1172] paddr_t should be larger than 32 bits when 87228fcee17SJerome Forissier CFG_WITH_LPAE is enabled 87328fcee17SJerome Forissier 87428fcee17SJerome Forissier## Tested on 87528fcee17SJerome Forissier 87628fcee17SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with 87728fcee17SJerome Forissierits default configuration, while _extended_ means it was run successfully 87828fcee17SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite 87928fcee17SJerome Forissierv1.1.0.4. 88028fcee17SJerome Forissier 88128fcee17SJerome ForissierIf a platform is not listed, it means the release was not tested on this 88228fcee17SJerome Forissierplatform. 88328fcee17SJerome Forissier 88428fcee17SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 88528fcee17SJerome Forissier* d02: extended 88628fcee17SJerome Forissier* hikey: extended 88728fcee17SJerome Forissier* imx-mx6ulevk: standard 88828fcee17SJerome Forissier* ls-ls1021atwr: standard 88928fcee17SJerome Forissier* mediatek-mt8173: standard 89028fcee17SJerome Forissier* rcar-h3: standard 89128fcee17SJerome Forissier* rpi3: standard 89228fcee17SJerome Forissier* stm-b2260: extended 89328fcee17SJerome Forissier* stm-cannes: extended 89428fcee17SJerome Forissier* ti-dra7xx: standard 89528fcee17SJerome Forissier* vexpress-fvp: standard 89628fcee17SJerome Forissier* vexpress-juno: standard 89728fcee17SJerome Forissier* vexpress-qemu_armv8a: standard 89828fcee17SJerome Forissier* vexpress-qemu_virt: extended 89928fcee17SJerome Forissier* zynqmp-zcu102: standard 90028fcee17SJerome Forissier 90128fcee17SJerome Forissier[github_commits_2_3_0]: https://github.com/OP-TEE/optee_os/compare/2.2.0...2.3.0 90228fcee17SJerome Forissier[issue1172]: https://github.com/OP-TEE/optee_os/issues/1172 90328fcee17SJerome Forissier[issue1188]: https://github.com/OP-TEE/optee_os/issues/1188 90428fcee17SJerome Forissier[issue1199]: https://github.com/OP-TEE/optee_os/issues/1199 90528fcee17SJerome Forissier[issue1203]: https://github.com/OP-TEE/optee_os/issues/1203 90628fcee17SJerome Forissier 907c0c5d399SJerome Forissier# OP-TEE - version 2.2.0 908c0c5d399SJerome Forissier 909c0c5d399SJerome Forissier[Link][github_commits_2_2_0] to a list of all commits between this release and 910c0c5d399SJerome Forissierthe previous one (2.1.0). 911c0c5d399SJerome Forissier 912c0c5d399SJerome ForissierPlease note: this release is API-compatible with the previous one, but the 913c0c5d399SJerome ForissierSecure Storage internal format is not compatible due to commit 914c0c5d399SJerome Forissier[fde4a75][commit_fde4a75] ("storage: encrypt the FEK with a TA-specific key"). 915c0c5d399SJerome Forissier 916c0c5d399SJerome Forissier[commit_fde4a75]: https://github.com/OP-TEE/optee_os/commit/fde4a75 917c0c5d399SJerome Forissier 918c0c5d399SJerome Forissier## New features 919c0c5d399SJerome Forissier 920c0c5d399SJerome Forissier* New supported platforms: 921c0c5d399SJerome Forissier * Freescale i.MX6 Quad SABRE Lite & SD 922c0c5d399SJerome Forissier * HiSilicon D02 923c0c5d399SJerome Forissier * Raspberry Pi3 924c0c5d399SJerome Forissier * Renesas RCAR H3 925c0c5d399SJerome Forissier * STMicroelectronics b2260 - h410 926c0c5d399SJerome Forissier 927c0c5d399SJerome Forissier* Pager: Support paging of read/write pages by encrypting them with AES-GCM. 928c0c5d399SJerome Forissier Support paging of user TAs. Add global setting for TZSRAM size 929c0c5d399SJerome Forissier (CFG_CORE_TZSRAM_EMUL_SIZE), defaults to 300K. 930c0c5d399SJerome Forissier 931c0c5d399SJerome Forissier* Support for more than 8 CPU cores 932c0c5d399SJerome Forissier 933c0c5d399SJerome Forissier* Added SPI framework and PL022 driver 934c0c5d399SJerome Forissier 935c0c5d399SJerome Forissier* GPIO: framework supports multiple instances, PL061 driver now has get/set 936c0c5d399SJerome Forissier interrupt and mode control functions 937c0c5d399SJerome Forissier 938c0c5d399SJerome Forissier* Secure storage: Encrypt the File Encryption Key with a TA-specific key for 939c0c5d399SJerome Forissier better TA isolation. Add build-time and run-time support for multiple storage 940c0c5d399SJerome Forissier backends. Add SQLite backend. 941c0c5d399SJerome Forissier 942c0c5d399SJerome Forissier* Trusted User Interface: some code is introduced to support the implementation 943c0c5d399SJerome Forissier of TUI. This includes: a generic framebuffer driver, display and serial 944c0c5d399SJerome Forissier abstractions, and drivers for PL111 (LCD) / PL050 (KMI) / TZC400 and PS2 945c0c5d399SJerome Forissier mouse. 946c0c5d399SJerome Forissier 947c0c5d399SJerome Forissier* AES acceleration using ARMv8-A Cryptographic Extensions instructions is 948c0c5d399SJerome Forissier now supported in AArch32 mode 949c0c5d399SJerome Forissier 950c0c5d399SJerome Forissier* Add support for GCC flags: -fsanitize=undefined and -fsanitize=kernel-address 951c0c5d399SJerome Forissier 952c0c5d399SJerome Forissier* Use a global setting for core heap size (CFG_CORE_HEAP_SIZE), 64K by default. 953c0c5d399SJerome Forissier 954c0c5d399SJerome Forissier* Add macros to unwind and print the call stack of TEE core 955c0c5d399SJerome Forissier 956c0c5d399SJerome Forissier* Libtomcrypt: sync with the latest `develop` branch. 957c0c5d399SJerome Forissier 958c0c5d399SJerome Forissier* The Trusted Application SDK (ta_dev_kit.mk) can produce libraries (.a) 959c0c5d399SJerome Forissier 960c0c5d399SJerome Forissier* Rework assertions and TEE core panics and properly honor NDEBUG 961c0c5d399SJerome Forissier 962c0c5d399SJerome Forissier## Bug fixes 963c0c5d399SJerome Forissier 964c0c5d399SJerome Forissier* Fix incorrect algorithm passed to cipher.final() 965c0c5d399SJerome Forissier 966c0c5d399SJerome Forissier* scripts: support Python 2.x and 3.x 967c0c5d399SJerome Forissier 968c0c5d399SJerome Forissier* Secure storage: Add proper locking to support concurrent access. Fix sign 969c0c5d399SJerome Forissier extension bug with offset parameter of syscall storage_obj_seek which could 970c0c5d399SJerome Forissier cause errors in Aarch32 mode. Fix reading beyond end of file. 971c0c5d399SJerome Forissier 972c0c5d399SJerome Forissier* Aarch64: mask all maskable exceptions before doing a normal return from call. 973c0c5d399SJerome Forissier 974c0c5d399SJerome Forissier* Device Tree: add no-map property to OP-TEE node in reserved-memory. 975c0c5d399SJerome Forissier 976c0c5d399SJerome Forissier* LibTomcrypt: fix CVE-2016-6129 977c0c5d399SJerome Forissier 978c0c5d399SJerome Forissier## Known issues 979c0c5d399SJerome Forissier 980c0c5d399SJerome Forissier* New issues open on GitHub 981c0c5d399SJerome Forissier * [#1093][issue1093] rcar-h3: xtest 6010 hangs 982c0c5d399SJerome Forissier * [#1092][issue1092] rcar-h3: xtest 4010 fails 983c0c5d399SJerome Forissier * [#1081][issue1081] Bad mapping of TA secure memref parameters 984c0c5d399SJerome Forissier * [#1071][issue1071] __data_end may not correctly represent text start position when using CFG_WITH_PAGER 985c0c5d399SJerome Forissier * [#1069][issue1069] armv7/Aarch32: crash in stack unwind (DPRINT_STACK()) 986c0c5d399SJerome Forissier 987c0c5d399SJerome Forissier## Tested on 988c0c5d399SJerome Forissier 989c0c5d399SJerome ForissierIn the list below, _standard_ means that the `xtest` program passed with 990c0c5d399SJerome Forissierits default configuration, while _extended_ means it was run successfully 991c0c5d399SJerome Forissierwith the additional GlobalPlatform™ TEE Initial Configuration Test Suite 992c0c5d399SJerome Forissierv1.1.0.4. 993c0c5d399SJerome Forissier 994c0c5d399SJerome ForissierIf a platform is not listed, it means the release was not tested on this 995c0c5d399SJerome Forissierplatform. 996c0c5d399SJerome Forissier 997c0c5d399SJerome Forissier<!-- ${PLATFORM}-${PLATFORM_FLAVOR}, ordered alphabetically --> 998c0c5d399SJerome Forissier* d02: extended 999c0c5d399SJerome Forissier* hikey: extended 1000c0c5d399SJerome Forissier* imx-mx6qsabrelite: standard 1001c0c5d399SJerome Forissier* imx-mx6qsabresd: standard 1002c0c5d399SJerome Forissier* rcar-h3: standard, pass except issues [#1092][issue1092] and [#1093][issue1093] 1003c0c5d399SJerome Forissier* rpi3: standard 1004c0c5d399SJerome Forissier* stm-b2260: standard 1005c0c5d399SJerome Forissier* stm-cannes: standard 1006c0c5d399SJerome Forissier* ti-dra7xx: standard 1007c0c5d399SJerome Forissier* vexpress-fvp: standard 1008c0c5d399SJerome Forissier* vexpress-juno: standard 1009c0c5d399SJerome Forissier* vexpress-qemu_armv8a: standard 1010c0c5d399SJerome Forissier* vexpress-qemu_virt: extended 1011c0c5d399SJerome Forissier* zynqmp-zcu102: standard 1012c0c5d399SJerome Forissier 1013c0c5d399SJerome Forissier[github_commits_2_2_0]: https://github.com/OP-TEE/optee_os/compare/2.1.0...2.2.0 1014c0c5d399SJerome Forissier[issue1081]: https://github.com/OP-TEE/optee_os/issues/1081 1015c0c5d399SJerome Forissier[issue1071]: https://github.com/OP-TEE/optee_os/issues/1071 1016c0c5d399SJerome Forissier[issue1069]: https://github.com/OP-TEE/optee_os/issues/1069 1017c0c5d399SJerome Forissier[issue1092]: https://github.com/OP-TEE/optee_os/issues/1092 1018c0c5d399SJerome Forissier[issue1093]: https://github.com/OP-TEE/optee_os/issues/1093 1019c0c5d399SJerome Forissier 1020ac3cc110SPascal Brand# OP-TEE - version 2.1.0 1021a0cd5d60SPascal Brand 1022ac3cc110SPascal Brand## New features 1023ac3cc110SPascal Brand 1024ac3cc110SPascal Brand* New supported platforms: 1025ac3cc110SPascal Brand * Xilinx Zynq UltraScale+ MPSOC 1026ac3cc110SPascal Brand * Spreadtrum SC9860 1027ac3cc110SPascal Brand 1028ac3cc110SPascal Brand* GCC5 support 1029ac3cc110SPascal Brand 1030ac3cc110SPascal Brand* Non Linear Mapping support: In OP-TEE kernel mode, the physical to virtual 1031ac3cc110SPascal Brand addresses was linear until this release, meaning the virtual addresses 1032ac3cc110SPascal Brand were equal to the physical addresses. This is no more the case in this 1033ac3cc110SPascal Brand release. 1034ac3cc110SPascal Brand 1035ac3cc110SPascal Brand* Font rendering routines have been introduced in order to ease an 1036ac3cc110SPascal Brand implementation of Trusted UI. 1037ac3cc110SPascal Brand 1038ac3cc110SPascal Brand* File Storage: Possibility to use the normal world filesystem and the RPMB 1039ac3cc110SPascal Brand implementations simultaneously. 1040ac3cc110SPascal Brand 1041ac3cc110SPascal Brand* AOSP: There is a [local manifest][aosp_local_manifest] to build OP-TEE into an AOSP build, running on HiKey. 1042ac3cc110SPascal Brand Please refer to the README in that repo for instructions. 1043ac3cc110SPascal Brand 1044ac3cc110SPascal Brand* OpenEmbedded: In addition to the makefile-based build described in the optee_os README, there is an 1045ac3cc110SPascal Brand [OpenEmbedded-based build][oe_build] that supports Qemu (32-bit), FVP (64-bit), and HiKey (64-bit). 1046ac3cc110SPascal Brand Please refer to the README in that repo for instructions. 1047ac3cc110SPascal Brand 1048ac3cc110SPascal Brand* [Link][github_commits_2_1_0] to a list of all commits between this and 1049ac3cc110SPascal Brand previous release. 1050ac3cc110SPascal Brand 1051ac3cc110SPascal Brand 1052ac3cc110SPascal Brand## Tested on 1053ac3cc110SPascal BrandDefinitions: 1054ac3cc110SPascal Brand 1055ac3cc110SPascal Brand| Type | Meaning | 1056ac3cc110SPascal Brand| ---- | ------- | 1057ac3cc110SPascal Brand| Standard tests | The [optee_test][optee_test] project. | 1058ac3cc110SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 1059ac3cc110SPascal Brand 1060ac3cc110SPascal Brand* ARM Juno Board (vexpress-juno), standard. 1061ac3cc110SPascal Brand* Foundation Models (vexpress-fvp), standard tests + extended tests, 1062ac3cc110SPascal Brand using FVP ARM V8 Foundation Platformr0p0 (platform build 10.0.37) 1063ac3cc110SPascal Brand* FSL i.MX6 UltraLite EVK (imx), standard. 1064ac3cc110SPascal Brand* FSL ls1021a (ls-ls1021atwr), standard tests. 1065ac3cc110SPascal Brand* HiKey (hikey), standard + extended tests. 1066ac3cc110SPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 1067ac3cc110SPascal Brand* Xilinx Zynq UltraScale+ MPSOC, standard tests 1068ac3cc110SPascal Brand 1069ac3cc110SPascal BrandNote that the following platform has not been tested: 1070ac3cc110SPascal Brand* MTK8173-EVB (mediatek-mt8173) 1071ac3cc110SPascal Brand 1072ac3cc110SPascal Brand 1073ac3cc110SPascal Brand## Known issues 1074ac3cc110SPascal Brand* Issue(s) open on GitHub 1075ac3cc110SPascal Brand * [#868][pr868]: python-wand font generation sometimes times out 1076ac3cc110SPascal Brand * [#863][pr863]: "double free or corruption" error when building optee_os 1077ac3cc110SPascal Brand * [#858][pr858]: UUIDs in binary format have wrong endinanness 1078ac3cc110SPascal Brand * [#857][pr857]: Formatting of UUIDs is incorrect 1079ac3cc110SPascal Brand * [#847][pr847]: optee_os panic(TEE-CORE: Assertion) 1080ac3cc110SPascal Brand * [#838][pr838]: TUI font rendering is _very_ slow 1081ac3cc110SPascal Brand * [#814][pr814]: Persistent objects : save informations after close 1082ac3cc110SPascal Brand * [#665][pr665]: xtest 1013 stalled on HiKey when log levels are 4 and optee_os is on its own UART 1083ac3cc110SPascal Brand * [#506][pr506]: tee-supplicant panic & ta panic 1084ac3cc110SPascal Brand 1085ac3cc110SPascal Brand[github_commits_2_1_0]: https://github.com/OP-TEE/optee_os/compare/2.0.0...2.1.0 1086ac3cc110SPascal Brand[pr868]: https://github.com/OP-TEE/optee_os/issues/868 1087ac3cc110SPascal Brand[pr863]: https://github.com/OP-TEE/optee_os/issues/863 1088ac3cc110SPascal Brand[pr858]: https://github.com/OP-TEE/optee_os/issues/858 1089ac3cc110SPascal Brand[pr857]: https://github.com/OP-TEE/optee_os/issues/857 1090ac3cc110SPascal Brand[pr847]: https://github.com/OP-TEE/optee_os/issues/847 1091ac3cc110SPascal Brand[pr838]: https://github.com/OP-TEE/optee_os/issues/838 1092ac3cc110SPascal Brand[pr814]: https://github.com/OP-TEE/optee_os/issues/814 1093ac3cc110SPascal Brand[pr665]: https://github.com/OP-TEE/optee_os/issues/665 1094ac3cc110SPascal Brand[aosp_local_manifest]: https://github.com/linaro-swg/optee_android_manifest 1095ac3cc110SPascal Brand[oe_build]: https://github.com/linaro-swg/oe-optee 1096ac3cc110SPascal Brand 1097ac3cc110SPascal Brand# OP-TEE - version 2.0.0 1098a0cd5d60SPascal Brand 1099a0cd5d60SPascal Brand## New features 1100a0cd5d60SPascal Brand 1101a0cd5d60SPascal Brand* Generic driver: A new generic TEE driver is in the process of being 1102a0cd5d60SPascal Brand [upstreamed][gendrv_v9]. 1103a0cd5d60SPascal Brand In this release, [OP-TEE/optee_linuxdriver][optee_linuxdriver] is no more used. 1104a0cd5d60SPascal Brand Instead, linux v4.5 is being patched using the proposed Generic TEE Driver, 1105a0cd5d60SPascal Brand as it can be found in [https://github.com/linaro-swg/linux/tree/optee][linux_optee] 1106a0cd5d60SPascal Brand 1107a0cd5d60SPascal Brand* RPMB support: Secure Storage can now use Replay Protected Memory Block (RPMB) partition 1108a0cd5d60SPascal Brand of an eMMC device. Check the [full documentation][rpmb_doc] 1109a0cd5d60SPascal Brand 1110a0cd5d60SPascal Brand* Hard-float ABI is now available. 1111a0cd5d60SPascal Brand 1112a0cd5d60SPascal Brand* [Link][github_commits_2_0_0] to a list of all commits between this and 1113a0cd5d60SPascal Brand previous release. 1114a0cd5d60SPascal Brand 1115a0cd5d60SPascal Brand 1116a0cd5d60SPascal Brand## Tested on 1117a0cd5d60SPascal BrandDefinitions: 1118a0cd5d60SPascal Brand 1119a0cd5d60SPascal Brand| Type | Meaning | 1120a0cd5d60SPascal Brand| ---- | ------- | 1121a0cd5d60SPascal Brand| Standard tests | The [optee_test][optee_test] project. | 1122a0cd5d60SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 1123a0cd5d60SPascal Brand 1124a0cd5d60SPascal Brand* ARM Juno Board (vexpress-juno), standard. 1125a0cd5d60SPascal Brand* Foundation Models (vexpress-fvp), standard tests + extended tests, 1126a0cd5d60SPascal Brand using FVP ARM V8 Foundation Platformr0p0 (platform build 9.5.40) 1127eb00c7b9SPascal Brand* FSL ls1021a (ls-ls1021atwr), standard. 1128a0cd5d60SPascal Brand* HiKey (hikey), standard. 1129a0cd5d60SPascal Brand* MTK8173-EVB (mediatek-mt8173), standard. 1130a0cd5d60SPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 1131a0cd5d60SPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 1132a0cd5d60SPascal Brand 1133a0cd5d60SPascal Brand## Known issues 1134a0cd5d60SPascal Brand* Issue(s) open on GitHub 1135a0cd5d60SPascal Brand * [#40][prld40] BUG_ON() when re-using RPC buffer to tee-supplicant 1136a0cd5d60SPascal Brand * [#506][pr506]: tee-supplicant panic & ta panic 1137a0cd5d60SPascal Brand 1138a0cd5d60SPascal Brand[github_commits_2_0_0]: https://github.com/OP-TEE/optee_os/compare/1.1.0...2.0.0 1139a0cd5d60SPascal Brand[rpmb_doc]: https://github.com/OP-TEE/optee_os/blob/master/documentation/secure_storage_rpmb.md 1140a0cd5d60SPascal Brand[optee_linuxdriver]: https://github.com/OP-TEE/optee_linuxdriver 1141a0cd5d60SPascal Brand[gendrv_v9]: https://lkml.org/lkml/2016/4/1/205 1142a0cd5d60SPascal Brand[linux_optee]: https://github.com/linaro-swg/linux/tree/optee 1143a0cd5d60SPascal Brand 1144a0cd5d60SPascal Brand 1145c5bbfb4dSPascal Brand# OP-TEE - version 1.1.0 1146c5bbfb4dSPascal Brand 1147c5bbfb4dSPascal Brand 1148c5bbfb4dSPascal Brand## New features 1149c5bbfb4dSPascal Brand 1150c5bbfb4dSPascal Brand* Softfloat library: floating point support is now available in 32bits TA. 1151c5bbfb4dSPascal Brand 1152c5bbfb4dSPascal Brand* Support running 64-bits TA: on ARMv8-A platform, TA can be compiled in 1153c5bbfb4dSPascal Brand AArch32 and/or in AArch64 in case the core is compiled in AArch64. 1154c5bbfb4dSPascal Brand An example can be found in HiKey configuration file. Using the following 1155c5bbfb4dSPascal Brand excerpt code, the user TA libraries are compiled in both AArch32 and 1156c5bbfb4dSPascal Brand AArch64, and can be found in `out/arm-plat-hikey/export-ta_arm32` and 1157c5bbfb4dSPascal Brand `out/arm-plat-hikey/export-ta_arm64` 1158c5bbfb4dSPascal Brand 1159c5bbfb4dSPascal Brand``` 1160c5bbfb4dSPascal Brand ta-targets = ta_arm32 1161c5bbfb4dSPascal Brand ta-targets += ta_arm64 1162c5bbfb4dSPascal Brand``` 1163c5bbfb4dSPascal Brand 1164c5bbfb4dSPascal Brand* Concurrent TA support: multiple TA can run in parallel on 1165c5bbfb4dSPascal Brand several cores. 1166c5bbfb4dSPascal Brand 1167c5bbfb4dSPascal Brand* New tests added in xtest test suite: concurrent TA (xtest 1013), 1168c5bbfb4dSPascal Brand floating point tests (xtest 1006 and os_test TA) and corruption 1169c5bbfb4dSPascal Brand file storage (xtest 20000) 1170c5bbfb4dSPascal Brand 1171c5bbfb4dSPascal Brand* [Link][github_commits_1_1_0] to a list of all commits between this and 1172c5bbfb4dSPascal Brand previous release. 1173c5bbfb4dSPascal Brand 1174c5bbfb4dSPascal Brand 1175c5bbfb4dSPascal Brand## Tested on 1176c5bbfb4dSPascal BrandDefinitions: 1177c5bbfb4dSPascal Brand 1178c5bbfb4dSPascal Brand| Type | Meaning | 1179c5bbfb4dSPascal Brand| ---- | ------- | 1180c5bbfb4dSPascal Brand| Standard tests | The [optee_test][optee_test] project. | 1181c5bbfb4dSPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 1182c5bbfb4dSPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 1183c5bbfb4dSPascal Brand 1184c5bbfb4dSPascal Brand* Foundation Models (vexpress-fvp), standard tests + extended tests, 1185c5bbfb4dSPascal Brand using FVP ARM V8 Foundation Platformr0p0 (platform build 9.5.40) 1186c5bbfb4dSPascal Brand* HiKey (hikey), standard + extended tests. 1187c5bbfb4dSPascal Brand* MT8173 (mediatek), standard tests. 1188c5bbfb4dSPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 1189c5bbfb4dSPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 1190c5bbfb4dSPascal Brand 1191c5bbfb4dSPascal Brand## Known issues 1192c5bbfb4dSPascal Brand* Secure Storage is implemented, but note that anti-rollback protection 1193c5bbfb4dSPascal Brand is not implemented yet. 1194c5bbfb4dSPascal Brand 1195c5bbfb4dSPascal Brand* Issue(s) open on GitHub 1196c5bbfb4dSPascal Brand * [#40][prld40] BUG_ON() when re-using RPC buffer to tee-supplicant 1197c5bbfb4dSPascal Brand * [#296][pr296]: Connecting RPMB to the storage APIs. 1198c5bbfb4dSPascal Brand * [#493][pr493]: setup_juno_optee: unable to find pre-built binaries 1199c5bbfb4dSPascal Brand * [#506][pr506]: tee-supplicant panic & ta panic 1200c5bbfb4dSPascal Brand 1201c5bbfb4dSPascal Brand[prld40]: https://github.com/OP-TEE/optee_linuxdriver/issues/40 1202c5bbfb4dSPascal Brand[pr506]: https://github.com/OP-TEE/optee_os/issues/506 1203c5bbfb4dSPascal Brand[github_commits_1_1_0]: https://github.com/OP-TEE/optee_os/compare/1.0.1...1.1.0 1204c5bbfb4dSPascal Brand 1205c5bbfb4dSPascal Brand 1206c5bbfb4dSPascal Brand 12078a7ee79dSPascal Brand# OP-TEE - version 1.0.0 12088a7ee79dSPascal Brand 12098a7ee79dSPascal BrandOP-TEE is now maintained by Linaro. Contributors do not need to 12108a7ee79dSPascal Brandsign a CLA anymore, but must follow the rules of the [DCO][DCO] 12118a7ee79dSPascal Brand(Developer Certificate of Origin) instead. 12128a7ee79dSPascal Brand 12138a7ee79dSPascal Brand 12148a7ee79dSPascal Brand## New features 12158a7ee79dSPascal Brand 12168a7ee79dSPascal Brand* Add hardware support for Texas Instruments DRA7xx, ARMv7 (plat-ti) 12178a7ee79dSPascal Brand 12188a7ee79dSPascal Brand* GlobalPlatform™ TEE Internal Core API Specification v1.1, 12198a7ee79dSPascal Brand including ECC algorithms. 12208a7ee79dSPascal Brand 12218a7ee79dSPascal Brand* Secure Storage: Files stored by the REE are now encrypted. Operations 12228a7ee79dSPascal Brand are made atomic in order to prevent inconsistencies in case of errors 12238a7ee79dSPascal Brand during the storage operations. [Slides][LCStorage] describing the 12248a7ee79dSPascal Brand Secure Storage have been presented at the Linaro Connect SFO15. 12258a7ee79dSPascal Brand 12268a7ee79dSPascal Brand* Change of format of the Trusted Applications: they follow a 12278a7ee79dSPascal Brand [signed ELF format][elf] 12288a7ee79dSPascal Brand 12298a7ee79dSPascal Brand* Rework thread [synchronization][synchro] in optee_os. 12308a7ee79dSPascal Brand 12318a7ee79dSPascal Brand* Use of ARMv8 native cryptographic support. 12328a7ee79dSPascal Brand 12338a7ee79dSPascal Brand* [OP-TEE/optee_test][optee_test] test suite is released. 12348a7ee79dSPascal Brand 12358a7ee79dSPascal Brand* Introduce [OP-TEE/manifest][manifest] and [OP-TEE/build][build] 12368a7ee79dSPascal Brand to setup and build QEMU, FVP, HiKey and Mediatek platforms. Setup scripts 12378a7ee79dSPascal Brand that used to be in optee_os have been removed, except for Juno board. 12388a7ee79dSPascal Brand 123995422146SPascal Brand* [Link][github_commits_1_0_0] to a list of all commits between this and 124095422146SPascal Brand previous release. 124195422146SPascal Brand 12428a7ee79dSPascal Brand 12438a7ee79dSPascal Brand## Tested on 12448a7ee79dSPascal BrandDefinitions: 12458a7ee79dSPascal Brand 12468a7ee79dSPascal Brand| Type | Meaning | 12478a7ee79dSPascal Brand| ---- | ------- | 12488a7ee79dSPascal Brand| Standard tests | The [optee_test][optee_test] project. | 12498a7ee79dSPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 12508a7ee79dSPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 12518a7ee79dSPascal Brand 12528a7ee79dSPascal Brand* ARM Juno Board (vexpress-juno), standard + extended tests. 12538a7ee79dSPascal Brand* Foundation Models (vexpress-fvp), standard tests. 12548a7ee79dSPascal Brand* HiKey (hikey), standard + extended tests. 12558a7ee79dSPascal Brand* MT8173 (mediatek), standard tests. 12568a7ee79dSPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 12578a7ee79dSPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 12588a7ee79dSPascal Brand 125995422146SPascal Brand## Known issues 126095422146SPascal Brand* Secure Storage is implemented, but note that anti-rollback protection 126195422146SPascal Brand is not implemented yet. 126295422146SPascal Brand 126395422146SPascal Brand* Issue(s) open on GitHub 126495422146SPascal Brand * [#210][pr210]: libteec.so 32-bit does not communicate well 126595422146SPascal Brand with 64-bit kernel module 126695422146SPascal Brand * [#296][pr296]: Connecting RPMB to the storage APIs. 126795422146SPascal Brand * [#493][pr493]: setup_juno_optee: unable to find pre-built binaries 126895422146SPascal Brand * [#494][pr494]: HiKey: xtest 7671 fails (1.0.0-rc2) 126995422146SPascal Brand 127095422146SPascal Brand[pr210]: https://github.com/OP-TEE/optee_os/issues/210 127195422146SPascal Brand[pr296]: https://github.com/OP-TEE/optee_os/issues/296 127295422146SPascal Brand[pr493]: https://github.com/OP-TEE/optee_os/issues/493 127395422146SPascal Brand[pr494]: https://github.com/OP-TEE/optee_os/issues/494 127495422146SPascal Brand[github_commits_1_0_0]: https://github.com/OP-TEE/optee_os/compare/0.3.0...1.0.0 12758a7ee79dSPascal Brand[DCO]: https://github.com/OP-TEE/optee_os/blob/master/Notice.md#contributions 12768a7ee79dSPascal Brand[LCStorage]: http://www.slideshare.net/linaroorg/sfo15503-secure-storage-in-optee 12778a7ee79dSPascal Brand[synchro]: https://github.com/OP-TEE/optee_os/blob/master/documentation/optee_design.md#4-thread-handling 12788a7ee79dSPascal Brand[elf]: https://github.com/OP-TEE/optee_os/blob/master/documentation/optee_design.md#format 12798a7ee79dSPascal Brand[optee_test]: https://github.com/OP-TEE/optee_test 12808a7ee79dSPascal Brand[manifest]: https://github.com/OP-TEE/manifest 12818a7ee79dSPascal Brand[build]: https://github.com/OP-TEE/build 12828a7ee79dSPascal Brand 128395422146SPascal Brand 128495422146SPascal Brand 128511d59085SPascal Brand# OP-TEE - version 0.3.0 128611d59085SPascal Brand 128711d59085SPascal Brand## New features 128811d59085SPascal Brand 128911d59085SPascal Brand* Add hardware support for 129011d59085SPascal Brand * Mediatek MT8173 Board, ARMv8-A (plat-mediatek) 129111d59085SPascal Brand * Hisilicon HiKey Board, ARMv8-A (plat-hikey) 129211d59085SPascal Brand* AArch64 build of optee_os is now possible through the configuration `CFG_ARM64_core=y` 129311d59085SPascal Brand* Secure Storage: Data can be encrypted prior to their storage in the non-secure. 129411d59085SPascal Brand Build is configured using `CFG_ENC_FS=y` 129511d59085SPascal Brand* A generic boot scheme can be used. Boot configuration is commonalized. This helps 129611d59085SPascal Brand new board support. It is applied on plat-hikey, plat-vexpress, plat-mediatek, plat-stm 129711d59085SPascal Brand and plat-vexpress. 129811d59085SPascal Brand 129911d59085SPascal Brand## Tested on 130011d59085SPascal BrandDefinitions: 130111d59085SPascal Brand 130211d59085SPascal Brand| Type | Meaning | 130311d59085SPascal Brand| ---- | ------- | 130411d59085SPascal Brand| Standard tests | The optee_test project. | 130511d59085SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 130611d59085SPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 130711d59085SPascal Brand 130811d59085SPascal Brand* ARM Juno Board (vexpress-juno), standard tests. 130911d59085SPascal Brand* Foundation Models (vexpress-fvp), standard tests. 131011d59085SPascal Brand* HiKey (hikey), standard tests. 131111d59085SPascal Brand* MT8173 (mediatek), standard tests. 131211d59085SPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 131311d59085SPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 131411d59085SPascal Brand 131511d59085SPascal Brand------------------------------------------- 131611d59085SPascal Brand 1317f5117af2SPascal Brand# OP-TEE - version 0.2.0 1318759cc499SJoakim Bech 1319f5117af2SPascal Brand## New features 1320f5117af2SPascal Brand 1321f5117af2SPascal Brand### Linux Driver Refactoring 1322f5117af2SPascal Brand 1323f5117af2SPascal BrandLinux Driver has been refactored. It is now split in two parts: 1324f5117af2SPascal Brand* optee.ko, the generic Linux driver. It contains all functionality 1325f5117af2SPascal Brand common to all backends. 1326f5117af2SPascal Brand* optee_armtz.ko, a specific backend dedicated to the TrustZone optee. 1327f5117af2SPascal Brand It depends on optee.ko. 1328f5117af2SPascal Brand 1329f5117af2SPascal BrandLoading the TrustZone optee linux driver module is now performed using 1330f5117af2SPascal Brand 1331f5117af2SPascal Brand modprobe optee_armtz 1332f5117af2SPascal Brand 1333f5117af2SPascal BrandThanks to the dependency between the generic and the backend modules, optee.ko is then automatically loaded. 1334f5117af2SPascal Brand 1335f5117af2SPascal Brand### Misc new features 1336f5117af2SPascal Brand* support PL310 lock down at TEE boot 1337f5117af2SPascal Brand* add 64bits support (division / print) 1338f5117af2SPascal Brand 1339f5117af2SPascal Brand## Tested on 1340f5117af2SPascal BrandDefinitions: 1341f5117af2SPascal Brand 1342f5117af2SPascal Brand| Type | Meaning | 1343f5117af2SPascal Brand| ---- | ------- | 1344f5117af2SPascal Brand| Standard tests | The optee_test project. | 1345f5117af2SPascal Brand| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.1.0.4. | 1346f5117af2SPascal Brand| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 1347f5117af2SPascal Brand 1348f5117af2SPascal Brand* ARM Juno Board (vexpress-juno), standard tests + extended tests. 1349f5117af2SPascal Brand 1350f5117af2SPascal Brand* Foundation Models (vexpress-fvp), standard + extended tests. 1351f5117af2SPascal Brand 1352f5117af2SPascal Brand* QEMU (vexpress-qemu), standard + extended tests. 1353f5117af2SPascal Brand 1354f5117af2SPascal Brand* STM Cannes (stm-cannes), standard + extended tests. 1355f5117af2SPascal Brand 1356f5117af2SPascal Brand 135728fcee17SJerome Forissier## Issues resolved since last release 1358f5117af2SPascal Brand* Fix user TA trace issue, in order each TA is able to select its own trace level 1359f5117af2SPascal Brand 1360f5117af2SPascal Brand 1361f5117af2SPascal Brand------------------------------------------- 1362f5117af2SPascal Brand# OP-TEE - version 0.1.0 1363f5117af2SPascal Brand 1364f5117af2SPascal Brand## New features 1365759cc499SJoakim BechBelow is a summary of the most important features added, but at the end you will 1366759cc499SJoakim Bechfind a link that present you all commits between the current and previous 1367759cc499SJoakim Bechrelease tag. 1368759cc499SJoakim Bech 1369759cc499SJoakim Bech* GlobalPlatform Client API v1.0 support. 1370759cc499SJoakim Bech 1371759cc499SJoakim Bech* GlobalPlatform Internal API v1.0 support. 1372759cc499SJoakim Bech 1373759cc499SJoakim Bech* GlobalPlatform Secure Elements v1.0 support. 1374759cc499SJoakim Bech 1375759cc499SJoakim Bech* Add hardware support for 1376759cc499SJoakim Bech 1377759cc499SJoakim Bech * Allwinner A80, ARMv7-A. 1378759cc499SJoakim Bech 1379759cc499SJoakim Bech * ARM Juno Board, ARMv8-A. 1380759cc499SJoakim Bech 1381759cc499SJoakim Bech * Foundation Models, ARMv8-A. 1382759cc499SJoakim Bech 1383759cc499SJoakim Bech * Fast Models, ARMv8-A. 1384759cc499SJoakim Bech 1385759cc499SJoakim Bech * QEMU, ARMv7-A. 1386759cc499SJoakim Bech 1387759cc499SJoakim Bech * STM Cannes, ARMv7-A. 1388759cc499SJoakim Bech 1389759cc499SJoakim Bech * STM Orly2, ARMv7-A. 1390759cc499SJoakim Bech 1391759cc499SJoakim Bech* Add LibTomCrypt as the default software cryptographic library. 1392759cc499SJoakim Bech 1393759cc499SJoakim Bech* Add cryptographic abstraction layer in on secure side to ease the use of 1394759cc499SJoakim Bech other cryptographic software libraries or adding support for hardware 1395759cc499SJoakim Bech acceleration. 1396759cc499SJoakim Bech 1397759cc499SJoakim Bech* Extended cryptographic API with support for HKDF, Concat KDF and PBKDF2. 1398759cc499SJoakim Bech 1399759cc499SJoakim Bech* SHA-1 and SHA-256 ARMv8-A crypto extension implementation. 1400759cc499SJoakim Bech 1401759cc499SJoakim Bech* Enabled paging support in OP-TEE OS. 1402759cc499SJoakim Bech 1403759cc499SJoakim Bech* Add support for xtest (both standard and extended) in QEMU and FVP setup 1404759cc499SJoakim Bech scripts. 1405759cc499SJoakim Bech 1406759cc499SJoakim Bech* Add documentation for the OS design, cryptographic abstraction layer, secure 1407759cc499SJoakim Bech elements design, the build system, GitHub usage, key derivation extensions, 1408759cc499SJoakim Bech ARM-Trusted Firmware usage within OP-TEE and GlobalPlatform usage within 1409759cc499SJoakim Bech OP-TEE. 1410759cc499SJoakim Bech 1411759cc499SJoakim Bech* Integrate support for Travis CI. 1412759cc499SJoakim Bech 1413759cc499SJoakim Bech* [Link][github_commits_0_1_0] to a list of all commits between this and 1414759cc499SJoakim Bech previous release. 1415759cc499SJoakim Bech 1416759cc499SJoakim Bech 1417f5117af2SPascal Brand## Tested on 1418759cc499SJoakim BechDefinitions: 1419759cc499SJoakim Bech 1420759cc499SJoakim Bech| Type | Meaning | 1421759cc499SJoakim Bech| ---- | ------- | 1422759cc499SJoakim Bech| Standard tests | The optee_test project. | 1423759cc499SJoakim Bech| Extended tests | optee_test with tests from the GlobalPlatform™ TEE Initial Configuration Test Suite v1.0.0. | 1424759cc499SJoakim Bech| Hello world test | Plain hello world Trusted Application such as [this][hello_world]. | 1425759cc499SJoakim Bech 1426759cc499SJoakim Bech* Allwinner A80 (plat-sunxi), hello world test. 1427759cc499SJoakim Bech 1428759cc499SJoakim Bech* ARM Juno Board (vexpress-juno), standard tests. 1429759cc499SJoakim Bech 1430759cc499SJoakim Bech* Foundation Models (plat-vexpress-fvp), standard + extended tests 1431759cc499SJoakim Bech 1432759cc499SJoakim Bech* QEMU (plat-vexpress-qemu), standard + extended tests (and Secure Elements 1433759cc499SJoakim Bech tested separately). 1434759cc499SJoakim Bech 1435759cc499SJoakim Bech* STM Cannes (plat-stm-cannes), standard + extended tests. 1436759cc499SJoakim Bech 1437759cc499SJoakim Bech 143828fcee17SJerome Forissier## Issues resolved since last release 1439759cc499SJoakim BechN/A since this is the first release tag on OP-TEE. 1440759cc499SJoakim Bech 1441759cc499SJoakim Bech 1442f5117af2SPascal Brand## Known issues 1443759cc499SJoakim Bech* Storage is implemented, but not "Secure storage", meaning that a client 1444759cc499SJoakim Bech needs to do encrypt files on their own before storing the files. 1445759cc499SJoakim Bech 1446759cc499SJoakim Bech* Issue(s) open on GitHub 1447759cc499SJoakim Bech * [#95][pr95]: An error about building the test code of libtomcrypt. 1448759cc499SJoakim Bech 1449759cc499SJoakim Bech * [#149][pr149]: when testing optee os with arm trusted firmware (I 1450759cc499SJoakim Bech utilized optee os tee.bin as bl32 image) on juno platform, I got an 1451759cc499SJoakim Bech error. 1452759cc499SJoakim Bech 1453759cc499SJoakim Bech * [#161][pr161]: tee_svc_cryp.c lacks accessibility checks on 1454759cc499SJoakim Bech user-supplied TEE_Attributes. 1455759cc499SJoakim Bech 1456759cc499SJoakim Bech[hello_world]: https://github.com/jenswi-linaro/lcu14_optee_hello_world 1457759cc499SJoakim Bech[github_commits_0_1_0]: https://github.com/OP-TEE/optee_os/compare/b01047730e77127c23a36591643eeb8bb0487d68...999e4a6c0f64d3177fd3d0db234107b6fb860884 1458759cc499SJoakim Bech[pr95]: https://github.com/OP-TEE/optee_os/issues/95 1459759cc499SJoakim Bech[pr149]: https://github.com/OP-TEE/optee_os/issues/149 1460759cc499SJoakim Bech[pr161]: https://github.com/OP-TEE/optee_os/issues/161 1461759cc499SJoakim Bech 14627583c59eSCedric Chaumont* Global Platform Device Internal Core API v1.1 14637583c59eSCedric Chaumont * [#230][pr230]: Persistent object corruption support (TEE_ERROR_CORRUPT_OBJECT/_2) 14647583c59eSCedric Chaumont * [#230][pr230]: Persistent object access support (TEE_ERROR_STORAGE_NOT_AVAILABLE/_2) 1465